从mysql挂载的data目录中恢复数据库

当办公室断电导致docker中的mysql应用无法启动时,可以通过删除并重新部署应用,将_data文件夹中的数据库文件挂载到新的mysql实例,并在确保新挂载目录为空的情况下,将数据库文件及ibdata1文件复制到新目录,然后重启mysql来恢复数据。
摘要由CSDN通过智能技术生成

办公室突然断电,开机后部署在docker中的mysql应用无法正常启动,但是挂载在本地一个的_data文件夹里的所有库数据文件还在,如何用该目录中的文件恢复数据库中的数据?

1.删除之前的mysql应用

docker stop mysql

doker rm mysql

2.重新部署应用

将新数据库中的数据挂载到本地的 /var/lib/docker/volumes/mysql-data/data文件夹下



sudo docker run --name mysql -v /var/lib/docker/volumes/mysql-data/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root  -p 3306:3306 -d  mysql:5.7.23 


​

这里我的_data文件夹和data文件夹在同一目录

注意:不能直接将目录挂载到之前的_data文件夹下,新挂载的文件夹必须是空的

将之前_data文件夹下的数据库数据复制到data下面

再将_data下的 ibdata1文件也复制到data文件夹下,然后选择覆盖该文件

命令: mv ibdata1 ../data/ibdata1

3.最后重启mysql

docker restart mysql

数据恢复完成!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值