记一次Docker安装的Mysql数据恢复过程
星沙 • 2024-02-13 22:38 • 22 次点击 •
起因:Docker安装的Mysql数据库突然密码失效
操作步骤:
-
进入容器
docker exec -it <container_name_or_id> /bin/bash
替换
<container_name_or_id>
为您的MySQL容器的名称或ID。 -
在容器内部,找到MySQL的配置文件(通常是/etc/mysql/my.cnf或/etc/mysql/conf.d/docker.cnf)
find / -name my.cnf
-
将找到的my.cnf文件复制到本机编辑
docker cp <container_name_or_id>:/etc/my.cnf /disk/
替换
<container_name_or_id>
为您的MySQL容器的名称或ID。
我的容器中my.cnf文件在/etc/my.cnf,将文件复制到本机的/disk/目录内 -
编辑/disk/my.cnf文件,在文件内添加skip-grant-tables并保存
skip-grant-tables
-
将/disk/my.cnf文件复制回Docker容器内
docker cp /disk/my.cnf <container_name_or_id>:/etc/
-
重启容器后重新进入容器,进入mysql命令行模式
mysql -u root
-
以使用mysqldump工具来备份名为surveyking的数据库
mysqldump -u root -p surveyking > surveyking.sql
-
复制surveyking.sql到本机
docker cp mysql-Survey:/surveyking.sql /disk/
Docker •
扫描二维码,在手机上阅读