如何在没有此错误的情况下将此SQL转储导入PhpMyAdmin?

时间:2015-08-19 23:56:24

标签: mysql sql wordpress phpmyadmin

我正在尝试使用PhpMyAdmin将SQL转储从实时WordPress站点导入到我的本地MAMP开发环境中,以便我可以在本地对该站点进行编辑。我一直收到这个错误:

  

错误
  SQL查询:INSERT INTO`wp_options` VALUES(259568,'_ transnsient_timeout_geoip_98.80.4.79','1440122500','no');

     MySQL说:文档
  #1062 - 重复'PRIMARY'重复输入'259568'

我对SQL的了解很少。可能导致此问题的原因以及我需要做些什么来解决问题,以便我可以成功导入数据库并使网站在本地启动并运行?

2 个答案:

答案 0 :(得分:3)

您可以将INSERT语句替换为INSERT IGNORE。这有助于导入条目,即使它们有重复项。

如果使用类似unix的操作系统,可以使用sed命令替换insert:

cat dump.sql | sed s/"^INSERT"/"INSERT IGNORE"/g > dump-new.sql

或者您可以为mysqldump添加选项--insert-ignore来编写INSERT IGNORE语句而不是INSERT语句。

要通过phpMyAdmin导出,可以设置一个选项:

Settings -> Export -> SQL -> Use ignore inserts

答案 1 :(得分:1)

您的表已经有一个主键值为259568的记录,主键必须是唯一的。删除现有记录将允许您插入此记录,但删除现有记录也可能会导致问题。