一、SQL语句误操作导致数据丢失
1、首先需要停止mysql服务器的运行
/etc/init.d/mysql stop2、备份原来的数据
cd /var/lib/mysql
tar zcvf mysql-backup.tar.gz * --exclude ib*
mv mysql-backup.tar.gz /root/3、找到最新的备份文件并解压缩
cd /root/
tar zxvf mysql-backup.tar.gz4、把数据库文件夹复制到当前的mysql的数据目录
cp -Rf /root/var/lib/mysql/* /var/lib/mysql/5、启动mysql服务器
/etc/init.d/mysql start二、误删数据表
1、使用mysqldump将整个数据库备份到本地
mysqldump -u root -p database > database.sql2、使用mysql命令登录到服务器
mysql -u root -p3、选择需要恢复的数据库
use database4、还原刚才备份的数据表
source /path/to/database.sql三、文件损坏或数据库无法启动
1、使用mysqlcheck命令检查数据库的所有表
mysqlcheck -u username -p --check --all-databases2、如果有问题,则使用mysqlcheck命令修复数据库
mysqlcheck -u username -p --repair --all-databases3、如果数据库仍然无法正常启动,则可以删除所有日志文件并重启mysql:
cd /var/lib/mysql
rm -rf *.log
/etc/init.d/mysql restart四、recovery模式恢复数据
1、关闭MySQL服务
systemctl stop mysql2、使用以下命令查看binlog日志文件
ls -l /var/log/mysql/bin*3、使用mysqlbinlog将binlog文件导出
mysqlbinlog --start-position=4 --verbose /var/log/mysql/binlog.000001 > /root/mysql_recovery.sql4、编辑mysql_recovery.sql文件,删除所有的“SET”语句
5、使用mysql命令将导出的sql文件导入数据库
mysql -u root -p < /root/mysql_recovery.sql五、数据库迁移
1、使用mysqldump备份原数据库
mysqldump -u root -p database > /root/database.sql2、将备份的sql文件拷贝到新服务器
scp /root/database.sql username@newserver:/root/3、在新服务器上使用mysql命令导入sql文件
mysql -u root -p < /root/database.sql以上这些方法可以帮助你解决MySQL数据恢复的常见问题,让你的数据库得以快速恢复。
原创文章,作者:IELF,如若转载,请注明出处:https://www.506064.com/n/132108.html
微信扫一扫
支付宝扫一扫