MySQL的容器化方式以及命令参数解释

发布时间:2021-09-09 11:11:48 作者:chen
来源:亿速云 阅读:82

这篇文章主要介绍“MySQL的容器化方式以及命令参数解释”,在日常操作中,相信很多人在MySQL的容器化方式以及命令参数解释问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL的容器化方式以及命令参数解释”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

MySQL 容器化方式

MySQL 属于有状态应用,若将其容器化需将其状态抽离到宿主机,其配置文件、日志文件和持久化数据都应该挂载到宿主机。

容器内各路径

通过docker pull 命令拉取下来的官方 MySQL 镜像内,有几个重要路径:

命令

$ docker run \  --name db \  -e MYSQL_ROOT_PASSWORD=secret \  -v /path/to/confdir:/etc/mysql/conf.d \  -v /path/to/datadir:/var/lib/mysql \  -d  mysql:tag

参数解释

小技巧

我们可以在宿主机专门建立一个目录用来存放容器状态数据,层级结构为:

docker-container-data  |  - container1  | |  | - conf  | |  | - logs (其下又可以细分路径)  | |  | - data  |  - container2  |  - container3  |  ...

灾难措施

将状态数据挂载宿主机的好处就是如果容器发生问题,可以启动一个新容器并将容器状态路径挂载到宿主机上的原状态路径,从而恢复生产。

可以直接将新启动的 MySQL 容器的配置和持久化数据挂载到之前容器的宿主路径,新容器便可以无缝恢复数据(配置、用户、库、表、记录均恢复)。

注意事项

不可以将两个均在运行的容器的状态路径挂载到同一个宿主路径 ,两个容器同时在一个宿主路径下写状态,容器应用读取状态时会无法识别,导致崩溃。

若新启动的容器要挂载之前容器的宿主数据路径,则会忽略-e MYSQL_ROOT_PASSWORD=foo 命令参数所设定的 root  用户密码环境变量,因为挂载的数据路径下已经包含了 MySQL 用户信息表,而 root 用户的密码之前已经被设定过了。

到此,关于“MySQL的容器化方式以及命令参数解释”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注亿速云网站,小编会继续努力为大家带来更多实用的文章!

推荐阅读:
  1. MySQL容器化详细教程
  2. mysql5.7新增参数配置解释

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mysql

上一篇:PHP中Class self与static有哪些区别

下一篇:怎么通过重启路由的方法切换IP地址

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》