二进制日志记录了所有数据变更,是实现时间点恢复(PITR)的核心。本文演示从开启检查到日志解析、恢复的完整操作。
SHOW VARIABLES LIKE 'log_bin';
返回 ON 表示已启用。
SHOW MASTER STATUS;
记下 File 与 Position,恢复时需用到。
SHOW BINARY LOGS;
查看指定日志:
mysqlbinlog mysql-bin.000001
导出到文件分析:
mysqlbinlog mysql-bin.000006 > /root/bbx.log
三种等效方式:
# 方式一
mysqladmin -uroot -p flush-logs
# 方式二
FLUSH LOGS;
# 方式三(重启服务)
/etc/init.d/mysql restart
恢复至 2011-07-28 10:18:49:
mysqlbinlog --stop-datetime="2011-07-28 10:18:49" /var/lib/mysql/mysql-bin.000006 | mysql -uroot -p123456
结合全量备份 + Binlog 增量,即可实现任意秒级恢复(RPO 约秒级)。