如何更新具有外键约束的数据库?
Posted
技术标签:
【中文标题】如何更新具有外键约束的数据库?【英文标题】:How to update a database that has foreign keys constraints? 【发布时间】:2015-03-17 00:53:30 【问题描述】:我有一台虚拟机 (VM_A),它运行一个 mysql 数据库 DB_A 模式,他的 tbl_1 中有 200 行。在另一个运行相同 DB_A 模式副本的虚拟机 (VM_B) 中,我在 tbl_1 中有 50 行。
我想用来自 DB_A 的数据更新 DB_B。
tbl_2 持有来自 tbl_1 的外键。
我已经从 DB_A 制作了一个 mysql 转储,以便在 DB_B 中运行,待更新。
我不想在 drop tbl_1 之前使用 drop 架构。
如果我尝试在 DB_B 中运行代码,我会遇到由 tbl_2 中的外键约束引起的错误。
在这种情况下更新 DB_B 的最佳方法是什么? 我已经测试过这个解决方案但没有工作https://dba.stackexchange.com/questions/40046/is-there-a-way-to-truncate-table-that-has-foreign-a-key
【问题讨论】:
您发布的链接与 sql server 相关,不一定适用于 mysql... mysql 复制可能吗? dev.mysql.com/doc/refman/5.1/en/replication-howto.html 我尝试过使用相同的想法,只是。 复制如何工作? 【参考方案1】:https://dba.stackexchange.com/questions/40046/is-there-a-way-to-truncate-table-that-has-foreign-a-key 是 ms sql-server。在mysql中修改你的会话变量
SET FOREIGN_KEY_CHECKS=0;
【讨论】:
以上是关于如何更新具有外键约束的数据库?的主要内容,如果未能解决你的问题,请参考以下文章