办公室突然断电,开机后部署在docker中的mysql应用无法正常启动,但是挂载在本地一个的_data文件夹里的所有库数据文件还在,如何用该目录中的文件恢复数据库中的数据?
1.删除之前的mysql应用docker stop mysql doker rm mysql2.重新部署应用
将新数据库中的数据挂载到本地的 /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.最后重启mysqldocker restart mysql
数据恢复完成!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)