使用CMD在Mysql中导入压缩文件

时间:2012-06-29 08:54:37

标签: mysql database unix cmd 7zip

我正在尝试使用命令提示符使用以下命令将压缩数据库文件导入Mysql

7z < backup.sql.7z | mysql -u root test

root 用户 没有与之关联的密码
test 是我的目标空白数据库。 我使用 7zip 进行解压缩。 压缩数据库即backup.sql.7z位于D盘中。

但它给出了以下错误 enter image description here

所以,我使用了以下命令

7z < backup.7z | mysql -u root test

注意:这次我使用 backup.7z 而不是 backup.sql.7z

但后来我收到以下错误 enter image description here

显然我的SQL语法有问题。

那么使用正确的语法是什么?

2 个答案:

答案 0 :(得分:5)

我也需要从压缩文件中导入,并偶然发现了你的问题。 经过一番乱搞,我发现这对我有用:

7z x -so backup.7z | mysql -u root test

x 是提取命令
-so 使7-zip写入stdout

答案 1 :(得分:0)

你的语法没有错,这只是7zip的限制。在这种情况下最好使用xz,它不会在stdout中放入无用的垃圾,或者用你最喜欢的编程语言直接调用7z.dll。 7z.exe真的是用于存档管理,而不是unix风格的管道,而Igor非常不愿意改变它。

如果您尝试普通7z < somefile.7z,您会立即看到所有返回的内容都是使用列表。