问题:
1. 修改了容器/etc/mysql/my.cnf文件
2. 增加sql_mode,由于配置不正确,重启后mysql报错,容器启动失败,如下图
3. 或者使用docker logs mysql-test命令查看
解决:
win10直接使用cmd即可,使用docker cp命令把容器中的配置复制下来,然后复制一个新的my.conf替换错误的文件即可
1. 首先查看容器id或names
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.
3. 运行cmd时,使用管理员权限就可以
4. 在次复制配置文件到本地:docker cp mysql-test:/etc/mysql/my.cnf e://
5. 查看复制到本地的my.cnf,发现文件并没有复制成功,文件内容为空(原因:图见问题1:my.cnf是个链接文件,并且通过重新新建个Mysql容器发现mysql.cnf和my.cnf内容一致)
6. 直接复制mysql.cnf文件,docker cp mysql-test:/etc/mysql/mysql.cnf e://
7. mysql.conf文件复制到本地成功
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/ ,重新启动即可