我想从MySQL切换到MongoDB,但是数据丢失(超过1小时)对我来说是不可接受的.
我需要有3个备份计划:
每小时备份计划.每隔X分钟将数据刷新到磁盘,如果服务器出现问题我将确保重启后它将至少在一小时前获得所有数据.我可以配置吗?
每日备份计划.数据每天都会同步到备份磁盘,因此即使服务器爆炸,我也可以在几个小时内恢复昨天的数据.我应该使用fsync,master-slave还是别的什么?我想拥有最小的流量,所以理想情况下只会发送更改.
每周备份计划.数据同步到第二个备份磁盘,因此如果服务器和第一个备份磁盘都爆炸,我至少有上周的数据.这是可靠性问题,因此可以通过网络发送所有数据.
我该怎么做?
该fsync
命令将数据刷新到磁盘.默认情况下每60秒执行一次,但可以使用--syncdelay
命令行参数进行配置.
有关备份的文档对于每日和每周备份都有一些很好的指示.对于每日备份,主从配置似乎是最佳选择,因为它只会同步更改.
对于每周备份,您还可以使用主从配置或复制.另一个选项是mongodump实用程序,它将备份整个数据库.它能够在数据库运行时创建备份,因此您可以在主数据库或其中一个从服务器上运行它.您也可以在备份之前锁定从站.