备份大型 mysql 数据库的最好、最安全、最快捷的方法是什么?

备份大型 mysql 数据库的最好、最安全、最快捷的方法是什么?

我有一个在 Debian 服务器上运行的 mysql 服务器。我有一个 150GB 的 mysql 数据库... 备份它的最佳方法是什么?

我会说:screen then mysqldump -u user -p database > database.sql?

有什么建议么?

答案1

(大致按从侵入性最小到侵入性最大的顺序排列。

  • 备份副本 — 如果您已经有了副本。速度不快,但对主服务器没有影响。
  • LVM 快照 - 这几乎立即创建整个磁盘的“副本”。这也需要设置。
  • 其他形式的磁盘复制。(但您需要小心复制的内容。)
  • Percona 有更好的备份。
  • mysqldump从另一台服务器并将输出写入该额外的服务器。
  • mysqldump,写入同一服务器,位于列表底部附近。

答案2

绝对最佳的方法是创建副本,然后备份副本。当 mysqldump 循环遍历数据库表时,这种方式不会锁定数据库表。

网上有很多教程可以帮助指导您完成设置数据库的只读副本的过程。如果您使用 Commvault 或 NetBackup 之类的东西,它们有商业数据库备份模块,可以做很多很棒的事情,但我仍然非常喜欢设置副本只是为了处理备份。确保您有足够的磁盘空间用于数据库转储,并且在压缩时可能还需要一个副本。

相关内容