我一直在寻找一种方法来防止MySQL删除语句被奴隶处理,我正在研究数据仓库项目,我想在将数据复制到slave之后从生产服务器中删除数据.
完成这项工作的最佳方法是什么?
谢谢
有几种方法可以做到这一点.
SET SQL_LOG_BIN=0;在执行删除之前,在主服务器上运行相关会话.这样就不会写入二进制日志BEFORE DELETE在从站上实现触发器以忽略删除.我倾向于使用方法#1来表达我不想复制的语句.它需要SUPER特权.
我没有尝试#2,但它应该是可能的.
您只能通过 hack 来实现这一点,并且可能会导致问题。MySQL 复制不是为此而设计的。
想象一下,您在主服务器中插入一条记录,它会复制到从服务器。然后您从 master 中删除,但它不会从 slave 中删除。如果有人添加了具有相同唯一键的记录,则会在从站上发生冲突。
一些替代方案:
也许如果你提供你想要这个没有删除的镜像数据库的原因,我可以给你一个更有针对性的解决方案。
| 归档时间: |
|
| 查看次数: |
5534 次 |
| 最近记录: |