我有一个实时的MySQL数据库,它太大而无法定期将实时数据复制到登台服务器。
有没有办法从上周获得只是每周运行该脚本的更改?是否每个表都必须添加updated
时间戳字段才能实现此目的?
答案 0 :(得分:6)
我不知道“太大而无法定期复制”有多大,但我使用SQLyog来同步数据库。它智能地仅对已更改的记录插入/更新/删除。我高度推荐它。
答案 1 :(得分:4)
解决此问题的一种方法是使登台服务器成为生产服务器的复制从属服务器。但是,如果您不希望暂存机与生产主机保持同步,则可以关闭从机模式。
然后每周运行一个脚本,启动奴隶几个小时,让它让自己与主人保持同步,并再次停止奴隶。
START SLAVE;
-- Wait a while
-- Trial and error to determine how long it takes to come into sync
STOP SLAVE;
这会将其保存在与当前主周期一致的状态中。另一方面,如果你真的不需要它作为每周快照,你可以让奴隶一直在运行,以便它保持同步。