在Linux上进行MySQL数据恢复,可根据是否有备份及日志情况选择方法,操作前建议先备份当前数据,具体方法如下:
使用备份文件恢复
mysqldump备份,执行命令:mysql -u 用户名 -p 数据库名 < 备份文件.sqlinnobackupex等物理备份工具,按工具文档恢复数据文件后重启服务。利用二进制日志(binlog)恢复
log_bin已开启,通过SHOW BINARY LOGS;找到误操作前的日志文件。mysqlbinlog导出恢复SQL:mysqlbinlog --start-datetime="YYYY-MM-DD HH:MM:SS" --stop-datetime="YYYY-MM-DD HH:MM:SS" binlog文件 > restore.sqlmysql -u 用户名 -p < restore.sql。使用第三方工具
Percona XtraBackup(支持热备份恢复)、MyDumper(逻辑备份恢复)等。从主从复制恢复
注意:操作前需停止MySQL服务(sudo systemctl stop mysqld),恢复后重启服务(sudo systemctl start mysqld),并验证数据完整性。