我在运行 MySQL 时遇到问题(我处于救援磁盘中,无法运行任何程序),我想从系统文件中备份数据库,因为我打算格式化系统。我该怎么做?
谢谢。
答案1
如果你的系统没有完全死机(即MySQL服务可以启动):
1)从救援媒体启动
2)挂载系统磁盘
mount /dev/sdX /mnt/tmp
3)挂载虚拟文件系统
mount -o bind /dev /mnt/tmp/dev
mount -t proc proc /mnt/tmp/proc
mount -t sysfs sys /mnt/tmp/sys
4)更改根
chroot /mnt/tmp
5)当你处于 chroot 环境中时,启动 MySQL 服务
/etc/init.d/mysql start
6)像平常一样进行数据库备份
不要忘记检查你的备份前格式化;您还可以备份原始 MySQL 数据库文件,备份永远不会有害。
答案2
您可以尝试以下两种方法。
第一种可能工作第二应该工作但更加复杂。
复制数据库文件(通常在
$SOMEPATH/mysql/data
)。重新安装 mysql(使用与源相同的版本和操作系统)。将数据库文件转储到新安装data
目录中。启动 mysql,它可能会正常工作。将磁盘安装到一台正常工作的计算机上。使用“Percona Xtrabackup”备份数据。然后使用该备份进行恢复。(不要问如何使用 Xtrabackup,请阅读文档)