我应该选择哪种备份方法来备份高负载服务器上的数据库

我应该选择哪种备份方法来备份高负载服务器上的数据库

我有一个 mysql (MyISAM) 数据库,大小约为 30Gb。它有一个大表(还有一些较小的表,但没什么区别)。它每秒执行大约 2000 次选择(按主键选择单行),每秒执行 300 次更新,每秒执行 50 次插入。我们有大约 10 台具有类似数据库的独立服务器。

我想备份该数据库(最好是增量备份)而不使其脱机,该怎么做?

答案1

我用这个脚本mylvm备份在 250+Gb DB 等上。运行良好,拍摄快照后,它会执行并行 mysql 来验证快照是否有效。

答案2

如果您想使用标准 MySQL 实用程序进行备份,您可以配置一个从属服务器并在那里使用 MySQL 转储。

另一种方法是使用 Linux LVM 或 Solaris/FreeBSD ZFS 快照,使用您想要的任何命令复制快照,然后发布快照。

还有Zmanda MySQL 恢复管理器(社区版) ZManda MySQL 恢复管理器(企业版)可用的。

答案3

如果数据库运行在中央存储机器上,您可以利用该机器的快照。通常,这意味着将数据库置于备份模式,以便将所有写入刷新到磁盘,然后开始在内存中缓存,使用存储拍摄快照,然后将数据库恢复到正常模式。然后,您可以将该快照挂载到备份服务器上并对其进行任何操作,包括增量备份。

此外,当您的数据库在月底或季度末查询量很大时(例如财务应用程序),通常会使用此方法。您可以不使用快照,而是将一致的快照克隆到其他磁盘,并将所有报告(这可能会导致生产性能下降)重定向到其他存储资源。

相关内容