在Ubuntu上恢复MySQL数据主要有以下几种方法:
使用备份文件恢复
.sql
备份文件,可先停止MySQL服务,再通过mysql -u 用户名 -p 数据库名 < 备份文件.sql
命令恢复。sudo systemctl start mysql
。通过二进制日志(Binlog)恢复
SHOW VARIABLES LIKE 'log_bin'
),用mysqlbinlog
工具解析日志文件,提取误操作前的SQL语句并执行。mysqlbinlog --start-datetime="YYYY-MM-DD HH:MM:SS" /var/lib/mysql/mysql-bin.000001 | mysql -u root -p
。使用事务回滚(适用于未提交事务)
SHOW ENGINE INNODB STATUS
查看事务ID,执行ROLLBACK TO SAVEPOINT
回滚。使用第三方工具
undrop-for-innodb
等工具,适用于InnoDB存储引擎的误删数据恢复。注意:操作前务必备份当前数据,避免二次损坏。优先使用定期备份或Binlog恢复,确保数据完整性。