欢迎来到程序员中文网!

首页 Linux Mysql C++ Python PHP JavaScript 资源下载 动态 开源推荐
我要投稿 投诉建议

MySQL 备份与恢复:逻辑备份与物理备份策略

时间:2026年08月12日 05:28:36 浏览:0

MySQL 备份与恢复:逻辑备份与物理备份策略


备份是数据安全最后防线,需结合业务选择合适的备份方式。


1. 逻辑备份(mysqldump)


适合中小型数据库(< 50GB)。


# 全量备份所有数据库
mysqldump -u root -p --all-databases > full_backup.sql

# 备份指定库(加 --single-transaction 保证一致性)
mysqldump -u root -p --single-transaction --routines --triggers mydb > mydb.sql

# 只备份表结构
mysqldump -u root -p --no-data mydb > schema.sql

2. 物理备份(Percona XtraBackup)


适合大数据库,支持热备份。


# 安装
wget https://www.percona.com/downloads/XtraBackup/...

# 全量备份
innobackupex --user=root --password=xxx /backup/

# 准备(应用日志)
innobackupex --apply-log /backup/2025-01-01/

# 恢复(需停止 MySQL)
innobackupex --copy-back /backup/2025-01-01/

3. 增量备份与 binlog



  • 开启 binlog,配合全备实现任意时间点恢复。

  • 使用 mysqlbinlog 恢复指定时间或位置。
    mysqlbinlog --start-datetime="2025-01-01 10:00:00" --stop-datetime="2025-01-01 12:00:00" binlog.000001 | mysql -u root -p


4. 备份策略建议



  • 每天凌晨全量备份。

  • 保留最近 7 天备份,历史备份冷存。

  • 定期验证备份可恢复性(最重要!)。

  • 备份文件加密并异地存储。


记住:没有经过恢复演练的备份形同虚设。