Docker 中,对 mysql 配置文件的修改操作

背景

  • 前面,我进行了 Replication 以及 PXC 集群的配置操作 但是发现,实际工作中 一定会对 mysql 的配置参数进行修改的 比如:max_connections 但是,你会发现,docker 因为是虚拟环境的原因 我们不能直接在 Linux 中进行配置文件的查找
  • 如果,有时间 强烈建议,学习一下 Docker 操作技巧 毕竟我也是接触中遇到问题才会找途径解决 在此,记录一下操作过程,希望对你有所帮助 …

操作步骤

此处,以修改参数 "max_connections" 为例,记性演示

①. 找到要修改的镜像

  • 操作命令如下:docker ps -a

②. 进入要修改的容器

  • 注意是容器ID: docker exec -it [容器ID] /bin/bash

③. 确定 DockerMySQL 文件相关路径

  • 执行命令: mysql --help | grep my.cnf
root@40d2ee3ceac9:/# mysql --help | grep my.cnf
                      order of preference, my.cnf, $MYSQL_TCP_PORT,
/etc/my.cnf /etc/mysql/my.cnf ~/.my.cnf

④. 进入要修改的文件目录

  • cd /etc/mysql

⑤. 安装 vim 工具(docker 默认环境没有安装)

apt-get update
apt-get install vim

⑥. 修改 my.cnf 配置文件,并保存

  • vi my.cnf

⑦. 退出容器

  • 退出 bash (2 种操作) 1)Ctrl + d 退出容器(也可直接输入:exit); 2)Ctrl + p + q 退出并在后台运行容器;

⑧. 重启 docker 容器

  • docker restart [容器名]

⑨. 最后测试

最后,可以在 “ Navicat for windows ” 等工具中查看是否配置参数生效

show VARIABLES like  'max_conn%';
  • 至于其他操作,应该举一反三的进行吧

附录

  • 个人理解 毕竟没有对 docker 进行深入了解 在我看来 docker 只是在内部重建了一个虚拟环境 我们如果外部的人想修改配置,也要进去容器内部进行修改 并且,对于集群部署,默认的 MySQL 版本跟我们原本安装的也没关系 可以通过产看 MySQL 版本号比对 同时,其配置参数,多数都是默认的 我们从 "my.cnf" 中看不到其他参数 需要自行覆盖!
原文链接:https://cloud.tencent.com/developer/article/1872788
posted @ 2022-05-23 22:46  技术白菜  阅读(3267)  评论(0)    收藏  举报