首页/数据/数据库速查/binlog 归档备份方案
备份与恢复56 条

binlog 归档备份方案

PITR 的命脉是 binlog 全量归档:定期拷贝 + 实时流式拉取(mysqlbinlog --stop-never)双保险,归档到与数据不同故障域的存储。

数据库速查数据更新于 2026-10-12

两种归档方式

两种归档方式
# 方式一:定时 rsync 拷贝新增文件(简单)
rsync -a --include='mysql-bin.*' --exclude='*' \
  /var/lib/mysql/ /data/binlog_archive/
# 方式二:流式实时拉取到备份机
mysqlbinlog --read-from-remote-server --raw --stop-never \
  --host=10.0.0.10 --user=repl_backup --password='***' \
  --result-file=/data/binlog_archive/ mysql-bin.000039
权限远程拉取需要 REPLICATION SLAVE 或 REPLICATION CLIENT
校验归档文件与 SHOW BINARY LOGS 逐一核对
保留覆盖至少两次全备之间的所有 binlog
归档目录按「日期/实例」分层,附 checksum 清单,恢复时定位更快。

易错点

  • 只 rsync 不校验:拷贝中断留下半截文件,PITR 到中途报错才发现
  • 归档盘与数据库同机:主机级故障时 binlog 与数据一起丢

数据来源与参考

  • MySQL 8.0 Reference Manual: mysqlbinlog --stop-never

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌