从 phpMyAdmin 使用导出/导入 SQL 文件时出错

Posted

技术标签:

【中文标题】从 phpMyAdmin 使用导出/导入 SQL 文件时出错【英文标题】:Error when using export/import SQL file from phpMyAdmin 【发布时间】:2016-10-15 06:29:22 【问题描述】:

我做过一百次的事情:从一台服务器导出一个 mysql 数据库,然后将其导入另一台服务器。导出功能提供一个.sql 文件,然后将其导入新服务器。但是,我的服务器最近更新了他们的 phpMyAdmin 版本(当前为 4.6.0),现在每当我尝试这样做时,我在尝试导入时都会出错。我认为这与转义有关,因为其中一行现在在导出的文件中看起来像这样:

(5, 'that\\\'s not even', '2014-05-25 22:35:51', 0)

这是其中一个表的 INSERT 语句的一部分,而三元组 \\\ 让我感到困扰。我试图环顾配置并找到与转义相关的东西,但可惜没有运气。不确定这是否真的是问题,但任何关于可能出现问题以及如何解决问题的提示都非常受欢迎。

编辑:

从表面上看,该行似乎与错误没有任何共同之处。导入时显示的错误如下: 静态分析:

在分析过程中发现了 1 个错误。

结束引号 ' 是预期的。 (在位置 2615077 的“”附近)

之后是一个很长的查询,我也不知道这是否相关,但它以下面这一行结束,这远非最后一行:

(33, 'active_plugins', 'a:2:i:0;s:37:"admin-in-english/admin-in-english.php";i:1;s:29:"filedownload/filedownload.php";', 'yes'),

如果重要的话,最后一个特别是来自数据库中的一堆 WordPress 表。

编辑2: 这是更有趣的事情。我保留旧数据库转储的备份,因此我尝试从几个月前导入一个转储,该转储当时肯定已成功导入。现在,相同的文件,但是一旦我尝试导入就会出错......

【问题讨论】:

你为什么认为你有问题?对我来说,您似乎在原始 db that\'s 中没有非常好的价值,这就是您将其导出的原因。你在 phpMyAdmin 中有什么错误? 您的字符串没有问题:sqlfiddle.com/#!9/3e17b/1 提供有关您遇到的任何错误的更多详细信息 是的,你是对的。我在上面提供了有关显示的错误的更多信息。 【参考方案1】:

经过大量尝试后,发现问题是 PHP 对大于 6MB 的文件施加的限制。在 6MB 的查询之后,它会直接将其剪切到那里,然后在逻辑上抛出错误。

解决方案是更改它们,或者在我的情况下,因为我无法直接访问配置文件:SSH 导入成功。

【讨论】:

以上是关于从 phpMyAdmin 使用导出/导入 SQL 文件时出错的主要内容,如果未能解决你的问题,请参考以下文章

从 PHPMYADMIN 导出和导入数据

从 phpMyAdmin 导出 .sql 数据库

我有一个较旧的 .sql 文件(从 5.0.45 导出)我正在尝试通过 phpMyAdmin 导入更新版本的 MySQL。接收错误

使用phpMyAdmin 怎么导入数据库

如何使用 phpMyAdmin 自动导出 mySQL 数据库

从 MySQL 导出并导入 Microsoft SQL