mysqldump更新表

Posted

技术标签:

【中文标题】mysqldump更新表【英文标题】:Mysqldump update table 【发布时间】:2017-05-23 09:30:28 【问题描述】:

我使用 mysqldump 实用程序将数据库转储到测试服务器上,该服务器在 Crown 上运行。

  Mysqldump --host = 127.0.0.1 --skip-add-drop-table --skip-add-locks --no-create-info --user = root --password = 'root' stead>tead。 sql

用于进口的生产:

    Mysql --user = root --password = 'root' 测试

它也从表冠开始。

转储文件大约包含以下信息。

 INSERT INTO im_gruppy VALUES (100, '办公设备用纸', 1, '100.png', 1);

问题在于,当插入发现键“PRIMARY”的重复条目“1”时,导入停止。我想更新旧记录。

提示是否可以通过 mysqldump 和 mysql 进行更新行,如果不存在插入的行?

【问题讨论】:

呃,什么?没有更新。就像你自己说的那样,整个表都被删除了,没有要更新的行,然后它们被新插入。 使用 SELECT * FROM 'im_gruppy' 这将返回您插入到表中的所有记录的列表,在这种情况下,是您插入的一条记录 当我开始导入到另一台服务器时。我没有通过女士们,因为我已经拥有了大部分记录。我需要先更新已经存在的它们。但其中没有插入。我必须从服务器控制台(ubuntu)执行此操作。告诉我如何实现? mysqldump --host=127.0.0.1 --skip-add-drop-table --skip-add-locks --no-create-info --user=root --password='root ' stead > stead.sql 如果在键上找到匹配项,则不会发生插入。 【参考方案1】:

mysqldump --host=127.0.0.1 --skip-add-drop-table --skip-add-locks --no-create-info --replace --user=root - -password='root' 替代 >tead.sql

【讨论】:

以上是关于mysqldump更新表的主要内容,如果未能解决你的问题,请参考以下文章

使用 'mysqldump' 以 CSV 格式转储所有表

MySQL使用mysqldump+binlog完整恢复被删除的数据库

带有联合表的 mysqldump

mysqldump及问题集合

mysqldump测试锁定表

mysql 导出表结构和表数据 mysqldump用法