以MySQL数据库转储包含约束表


Take MySQL Database dump contain Constraints tables

按照以下步骤进行备份。

  1. 首先,我使用SHOW TABLES LIKE
  2. 在我的DB中获取表列表
  3. 采用SHOW CREATE TABLE
  4. 表结构
  5. 然后将所有表结构及其值保存到文件中。

现在备份工作正常。

在恢复过程中我遇到了问题。

如果某些表包含引用其他表的外键约束。我不能创建表。

我发现了这个问题,因为我正在逐个表进行备份。

例如有4个表A, B, C, D

  • A -包含C
  • 约束
  • C -包含约束与d

我将上面的表备份并按以下顺序存储到文件中A, B, C, D。

我的问题是如何处理,而备份数据库,如果表包含约束?

我搜索了很多,但我没能得到好的解决方案。所以,请分享如何做到这一点或分享如果我做错了什么。

谢谢。

对于这个问题的更新,我暂时禁用了键检查,现在它工作了。这个解决方案张贴在这个问题http://stackoverflow.com/questions/15501673/how-to-temporarily-disable-a-foreign-key-constraint-in-mysql

SET FOREIGN_KEY_CHECKS=1;