如何将bzip的输出流导入mysql,直接从压缩文件中恢复数据到数据库?

18

为了直接以bz2格式转储数据库,我尝试使用管道直接压缩转储文件,如下所示:

mysqldump -u userName -p myDataBase | bzip2 -c > myDump.sql.bz2

我想为恢复做类似的事情。我可以使用以下两个命令完成此操作: 命令1:

bzip2 -d myDump.sql.bz2

命令2:

mysql -u userName -p myDataBase < myDump.sql

需要: 现在我想使用管道将myDump.sql.bz2恢复到数据库myDataBase中。


1
我想补充一下,您的原帖第一条命令中有一个错别字。应该是:mysqldump -u $userName -p$password $databasename | bzip2 -c > $databasename.tar.bz2 - Joel G Mathew
2个回答

29
-bzip2的-c选项使其将输出发送到stdout,而你创建转储时已经在使用它了。


7
bzcatbzip2 -dc的缩写。如果可用,您可以使用它作为bzcat myDump.sql.bz2 | mysql -u userName -p myDatabase来导入MySQL数据库。 - ADTC

16

试一试:

bzcat dump.sql.bz2 | mysql -u name -p db

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接