2009年2月4日星期三

用master-slave实现mysql延时备份

master-slave不仅可以实现mysql的实时备份,也可以实现延时备份,而且这样实现的备份很灵活。

使用非常著名的maatkit工具集里面的mk-slave-delay,可以让salve落后master指定的时间。用法很简单,自己看文档。

延时备份为什么是必要的?

binlog里面记录的都是有写操作的sql语句

如果你delete了一条几个月前insert的记录,那么你要先找到那条insert的sql语句;如果批量delete或者drop了一张表,那就够你痛苦的了。当然,找回数据的前提是:binlog完整。如果drop了一张表,那么从create talbe开始,所有执行过的写操作全部重演一次。对于写频繁的表,这是不可忍受的。

延时备份可以让你恢复到一段时间之前,然后你再用日志恢复到那条语句前就可以了。

没有评论: