跨平台导入 MySQL 数据时出错(MAMP 到 WIMP)
我已将本地 MAMP 服务器上的 MySQL 数据库转储到 .sql 文件中。通常,我很容易将该文件顺利导入到我的生产 Linux 服务器中。但是,我当前的客户端在 WIMP 上运行 MySQL,当将 MAMP 生成的 .sql 转储导入我的 WIMP mysql 环境(使用 pphpMyAdmin)时,我收到“文件无法读取”错误?
关于我遇到的问题或要检查的内容有什么想法吗?谢谢
-编辑:
我最初的解释不清楚-我正在尝试从 MAMP 中导出,然后导入到 WIMP 中
I've dumped a MySQL database I have on my local MAMP server into a .sql file. Usually, it's easy enough for me to import that file to my production Linux servers without a hitch. However, my current client runs MySQL on WIMP, and when import the MAMP-generated .sql dump into my WIMP mysql environment (Using pphpMyAdmin) I get a "File could not be read" error?
Any ideas of what I'm bumping up against, or what to check? Thanks-
EDIT:
My initial explanation was unclear- I'm trying to export out of MAMP, and import into WIMP
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
导致此问题的最可能原因是 DOS 和 UNIX 平台上的行结束约定不同。 Windows 使用 DOS 约定“\r\n”作为换行符,而 Mac OSX 和 Linux 使用 UNIX 约定“\n”作为换行符。要解决此问题,请在 Mac 上的 mysql 转储文件上运行 unix2dos 实用程序,然后将该文件复制到 Windows 机器。
The most likely cause for this problem is the different end of line conventions on DOS and UNIX platforms. Windows uses the DOS convention of '\r\n' for newlines, while Mac OSX and Linux use the UNIX convention of '\n' for newlines. To fix the problem, run the unix2dos utility on the mysql dump file on your Mac and then copy the file to your Windows box.
您确定mySQL linux服务器有读取该文件的权限吗?
Are you sure you sure the mySQL linux server has permission to read the file?
mysql -u user -p -D db
mysql -u user -p -D db
mysql -u user -p -D db
文件
mysql -u user -p -D db < file
@Zhehao 指出了这个问题,这需要转换 .sql 文件的换行符。
然而,我只是想分享另一种对我有用的方法,即简单地转储到 SQL 窗格而不是文件,然后将其复制粘贴到目标 phpMyAdmin SQL 窗格中。
@Zhehao pointed out the issue, which entails converting the newlines of the .sql file.
However, I just wanted to share another way around this that worked for me was to simply dump to the SQL pane instead of a file, and then copy-paste it into the target phpMyAdmin SQL pane.