oke*_*_on 2 mysql mysqldump database-backups
我使用此线程的指南成功创建了一个数据库mysqldump文件.我还创建了第二个数据库,导航到包含并尝试将其恢复到新数据库但失败的目录,我尝试了两种方法:myDump.sqlmyDb1myDb2myDump.sqlmyDb2
> mysql -u root -p myDb2 < myDump.sql;
> -- entered password
Run Code Online (Sandbox Code Playgroud)
和:
> mysql -u root -p
mysql> -- entered password
mysql> USE myDb2;
mysql> SOURCE myDump.sql;
Run Code Online (Sandbox Code Playgroud)
两者都有相同的错误消息:
ERROR:
ASCII '\0' appeared in the statement, but this is not allowed unless option --binary-mode is enabled and mysql is run in
non-interactive mode. Set --binary-mode to 1 if ASCII '\0' is expected. Query: ' ?-'.
Run Code Online (Sandbox Code Playgroud)
我还想知道是否需要使用与旧数据库相同的数据库名称.我尝试使用不同的名称,但同样的结果错误.
这可能是由编码系统引起的.
我的转储文件是使用powershell中的重定向(">")生成的,我遇到了同样的问题.输出重定向生成一个带有UTF-16 Little endian的文件.
但是,这可以通过将dumpfile转换为utf-8来解决.这可以在emacs中完成:
Mx set-buffer-file-coding-system
然后保存文件并再次导入.
可以使用GNU"file"实用程序检测文件的编码系统,它也可以在Windows中找到,可以在这里找到:http ://gnuwin32.sourceforge.net/packages/file.htm
供将来使用,更好的转储命令如下:
mysqldump <dbname> -r <文件名>
| 归档时间: |
|
| 查看次数: |
5346 次 |
| 最近记录: |