docker 修改mysql配置导致 mysql容器启动失败解决办法

问题:

1. 修改了容器/etc/mysql/my.cnf文件

docker 修改mysql配置导致 mysql容器启动失败解决办法

2. 增加sql_mode,由于配置不正确,重启后mysql报错,容器启动失败,如下图

 docker 修改mysql配置导致 mysql容器启动失败解决办法

3. 或者使用docker logs mysql-test命令查看

docker 修改mysql配置导致 mysql容器启动失败解决办法

解决:

  win10直接使用cmd即可,使用docker cp命令把容器中的配置复制下来,然后复制一个新的my.conf替换错误的文件即可

1. 首先查看容器id或names

docker 修改mysql配置导致 mysql容器启动失败解决办法

2. 复制配置文件到本地:docker cp mysql-test:/etc/mysql/my.cnf e://

docker cp mysql-test:/etc/mysql/my.cnf e://

symlink \etc\alternatives\my.cnf e:\my.cnf: A required privilege is not held by the client.

docker 修改mysql配置导致 mysql容器启动失败解决办法

3. 运行cmd时,使用管理员权限就可以

docker 修改mysql配置导致 mysql容器启动失败解决办法

4. 在次复制配置文件到本地:docker cp mysql-test:/etc/mysql/my.cnf e://

docker 修改mysql配置导致 mysql容器启动失败解决办法

5. 查看复制到本地的my.cnf,发现文件并没有复制成功,文件内容为空(原因:图见问题1:my.cnf是个链接文件,并且通过重新新建个Mysql容器发现mysql.cnf和my.cnf内容一致)

docker 修改mysql配置导致 mysql容器启动失败解决办法

6. 直接复制mysql.cnf文件,docker cp mysql-test:/etc/mysql/mysql.cnf e://

docker 修改mysql配置导致 mysql容器启动失败解决办法

7. mysql.conf文件复制到本地成功

docker 修改mysql配置导致 mysql容器启动失败解决办法

8. 修改mysql.cnf配置,为原来正确状态后保存

9. 上传mysql.cnf到容器 ,docker cp mysql.cnf mysql-test:/etc/mysql/ ,重新启动即可

10. 如果还是有问题把mysql.cnf修改为my.cnf,上传到容器docker cp my.cnf mysql-test:/etc/mysql/ ,重新启动即可

 

 

 

 

上一篇:mysql - 初始化配置


下一篇:centos7在不联网环境下离线安装部署mysql5.7,配置文件my.cnf详解