最佳实践? Amazon EBS上的MySQL中的消费者数据(弹性块存储)

这是一个消费者应用程序,所以我会关心存储成本 – 我不想有5倍的数据副本躺下。 该应用程序分片非常好,所以我可以使用MySQL,并没有缩放问题。

Amazon EBS有一个很好的基线+快照备份function,使用S3。 这应该有一个轻的足迹(在存储成本方面)。

但是:magnolia.com的故事吓倒了我:糟糕的数据库或文件系统基本上完美的块级备份。

在MySQL级别上有什么与EBS几乎一样的存储效率?

没有替代冷场外备份。

任何一直在线的服务器,尤其是在同一个数据中心的服务器,都有可能因为入侵者的入侵而受到威胁,或者由于杀死原始数据(火灾,洪水等)而导致故障。 由于这两个原因,您可能需要接近实时的实时备份,以防万一您错误地做了一些事情,并且不太经常的冷场外备份。 冷场外备份的优点在于,它们尽可能与任何可以想象到的场景相隔离(不惜任何代价来销毁所有数据的恶意个人),而且可能会损失几天/每周的数据,这比失去一切。

就备份不良数据而言,任何备份系统都可以静默地备份损坏的数据,这就是常规testing的目的。

如果从另一台主机(不难)获得比EBS更好的存储速率,则可以将该主机设置为MySQL从属设备,并为MySQL创build自己的LVM磁盘,以便定期执行LVM快照。 请确保无论使用哪种快照机制,都要确保刷新表并读取locking表以保持数据完整性。 有关更多信息,请参阅http://lists.mysql.com/replication/1741 。 如果你正在使用一个只读的奴隶,你可能只是发出一个停止奴隶和刷新,虽然读锁不会伤害。

或者,你可以完全停止你的读奴隶,closuresSQL服务器,然后使用rdiff-backup,这是一个增量备份,只备份修改,以及复制你的MySQL文件。

真正的答案是,但是,你可能不需要这一切。 你可能会偶尔自动做一个mysqldump,gziping它,并上传它,所以S3,每隔一段时间下载副本到你的家用电脑备份。

我们在这里查看的是多大的数据库? 我个人使用mysqlhotcopy MyISAM表,并保持多个副本。 但没有额外的副本,我想你可以保留二进制日志 。 用于复制的二进制日志具有从特定位置运行的所有查询。 也许你可以build立一个系统,保存实际数据库的副本以及来自上次增量备份备份的二进制日志。

你应该build立定期的逻辑备份,这对于mysql来说可能意味着build立一个专用的slave来执行mysqldumps。 那些应该重新加载和定期testing。

如果你真的担心,可能需要查看一个数据库,这个数据库将对数据和/或日志文件进行一定程度的校验。 此外,对数据执行校验和的文件系统也将有助于防止磁盘级别损坏。

使用重复数据删除function查看云备份提供商 – Asigra是此领域的领导者。 如果可能的话,您希望备份数据位于不同于主数据的主轴和电网上。

重复数据删除应该通过减less您的带宽消耗来帮助您保持负担得起。