如何将 sql.gz 文件加载到我的数据库?(导入)

如何将 sql.gz 文件加载到我的数据库?(导入)

我正在尝试将经过 gzip 压缩的 SQL 文件直接导入 mysql。这是正确的方法吗?

mysql -uroot -ppassword mydb > myfile.sql.gz

答案1

zcat /path/to/file.sql.gz | mysql -u 'root' -p your_database

>mysql会将命令的输出写入stdout文件myfile.sql.gz,这很可能不是您想要的。此外,此命令会提示您输入 MySQL 用户“root”的密码。

答案2

要在导入 sql.gz 文件时显示进度条,请下载pv并使用以下内容:

pv mydump.sql.gz | gunzip | mysql -u root -p <database name>

在 CentOS/RHEL 中,您可以使用 安装 pv yum install pv

在 Debian/Ubuntu 中,apt-get install pv

在 macOS 中,brew install pv

在 Amazon Linux2 中,sudo amazon-linux-extras install epel 然后sudo yum install pv

答案3

最简单的方法是在导入之前解压缩数据库文件。另外正如@Prof. Moriarty 所提到的您不应该在命令中指定密码(系统会要求您输入密码)。此命令取自网页备忘单将一次性解压缩并导入数据库:

gunzip < myfile.sql.gz | mysql -u root -p mydb

答案4

在 macOS 上,我使用了以下命令:

zcat < [Database].sql.gz | mysql -u root -p [Database Name in MySQL]

输入您的密码,瞧!

相关内容