MySQL提供了暂时禁用外键检查的功能,从而允许不一致的数据进入数据库。
是否可以逐行检查整个MySQL数据库,以确保满足所有约束?
发布于 2013-01-21 10:14:23
很久以前,我写了一个叫做橡木-应用-ri的工具。这是开放柜工具包的一部分,这是普遍接受的。我从免责声明开始,这个工具不那么受欢迎,而且我对它没有太多的投入(除了我自己的)。
不过,它允许您指定两个共享FK关系的表,并将验证约束是否有效。
您可以要求它通过--action=delete或--action=setnull实际解决这些差异。
如果您有疑心,您可以向--print-only询问,在这种情况下,它不会对数据库进行任何更改;相反,它会打印出它想要在数据库上调用的语句。
我很高兴得到关于这方面的任何反馈。
https://dba.stackexchange.com/questions/33213
复制相似问题