Phpmyadmin 导出/导入问题与换行符

Posted

技术标签:

【中文标题】Phpmyadmin 导出/导入问题与换行符【英文标题】:Phpmyadmin Export/Import issue with line breaks 【发布时间】:2017-04-16 03:36:27 【问题描述】:

我尝试通过 phpmyadmin 从旧主机导出 wordpress 数据库。 我将所有设置保留为默认设置,在 sql 文件中,所有新行都由“\n”命令(或“\n”或“\n\n”)分隔

然后我通过 phpmyadmin 将这个 sql 文件导入到我的新服务器中,但是现在在 phpmyadmin 中,换行符不是不可见的,但是你可以看到很多“\n”和“\n\n”

在旧的 phpmyadmin 中,它看不到那些“\n”,而是有真正的换行符。 当通过浏览器查看页面时,情况更糟。不仅有“\n”还有“\r\n”

请有任何想法,可能是什么问题?! (都是utf8)

编辑:

我确信这更多的是导出而不是导入问题,因为我之前从另一台主机导入的另一个数据库运行良好,而那些“\n”的工作正常,但我不知道为什么这 1 个备份被破坏了

【问题讨论】:

由于windows和*unix系统的不同,windows使用"\r\n",*unix使用"\n" 哇,好的,谢谢,这是有道理的。这台主机可能在 Windows 上。然后让我谷歌搜索解决方案:)谢谢 这可能是转义序列的问题。 \n 代表换行,但是如果` character itself is escaped again, then \\n`会显示为字符串'\n' 在我的 *unix 系统上导入之前,在我的 backup.sql 中将所有“\\r\\n”重写为“\\n\\n”实际上是否安全?由于较早的 Windows 主机,还会出现更多问题吗? 无法再编辑我上面的评论,但我修复它的方法是将所有“\\r\\n”替换为“”(什么都没有)。但也可能是这个特定主机的问题。我离开它是有原因的:) 【参考方案1】:

您在每个系统上使用哪个 phpMyAdmin 版本?有一个bug with version 4.6.5.1 会导致导出时出现此问题。 phpMyAdmin 4.6.5.2 已发布以解决此问题,如果您愿意,也可以use this patch。

已编辑以包含 4.6.5.2 已发布的消息

【讨论】:

谢谢,我只是想知道为什么这开始发生在我身上。【参考方案2】:

正如 Issac 所说,似乎是 phpmyAdmin 版本 4.6.5.1 的错误导致了这个问题。 就我而言,我已经在所有 .sql 文件中搜索了这 3 个字符串:

\\r\\n
\\n
\\r

并用空格替换它们。一切都再次完美运行。

【讨论】:

以上是关于Phpmyadmin 导出/导入问题与换行符的主要内容,如果未能解决你的问题,请参考以下文章

phpmyadmin 不允许导入/导出文件

当我想导入或导出时,tcpdf_autoconfig.php#96 中的 phpmyadmin 错误

网站迁移,phpmyadmin 导出/导入语法错误 #1064

使用phpMyAdmin管理网站数据库(创建导入导出…)

如何利用phpmyadmin导入和导出mysql数据库

PHPmyadmin 3.4.9 导出到 CSV 的问题