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

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

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

root用户没有任何密码
testing是我的目标空白数据库。 我使用7zip解压缩目的。 压缩数据库即backup.sql.7z位于D盘。

但它给出了以下错误 在这里输入图像说明

所以,我使用了下面的命令

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

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

但是,然后我得到以下错误 在这里输入图像说明

很明显,我的SQL语法有问题。

那么正确的语法是什么呢?

我还需要从一个压缩文件导入,并偶然发现你的问题。 经过一些混乱之后,我发现这对我有效:

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

x是提取命令
使得7-zip写入标准输出

你的语法没什么问题,这只是7zip的限制。 在这种情况下最好使用xz,不要在标准输出中放入额外的垃圾,或者直接用你最喜欢的编程语言调用7z.dll。 7z.exe实际上是为了归档管理,而不是unix风格的管道,Igor很不愿意改变这种情况。

如果你尝试一个普通的7z < somefile.7z你会立即看到你所得到的是一个用法列表。