web-dev-qa-db-ja.com

sql.gzファイルをデータベースにロードするにはどうすればよいですか? (インポート)

Gzip圧縮されたSQLファイルをmysqlに直接インポートしようとしています。これは正しい方法ですか?

mysql -uroot -ppassword mydb > myfile.sql.gz
165
Alex
zcat /path/to/file.sql.gz | mysql -u 'root' -p your_database

>は、mysqlでのstdoutコマンドの出力をファイルmyfile.sql.gzに書き込みます。さらに、このコマンドはMySQLユーザー「root」のパスワードを要求します。

262
joschi

Sql.gzファイルのインポート中にプログレスバーを表示するには、pvをダウンロードし、以下を使用します。

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

CentOS/RHELでは、yum install pvを使用してpvをインストールできます。

Debian/Ubuntuではapt-get install pv

MACでは、brew install pv

86
Banjer

最も簡単な方法は、インポートする前にデータベースファイルを解凍することです。 @ Prof。Moriarty でも言及されているように、コマンドでパスワードを指定しないでください(パスワードの入力を求められます)。 webcheatsheet から取得したこのコマンドは、データベースを一度に解凍してインポートします。

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

zcatからエラーが発生し、エラーメッセージに追加のサフィックス.Zが付いたファイル名が含まれている場合は、代わりにgzcatを使用してみてください https://stackoverflow.com/questions/296717/zcat-wont-unzip-files-properly

15

MacOSでは、これを使用しました:

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

パスワードを入力してください。

5
Qasim

また、SQLファイルにUSEステートメントがあるかどうかも確認してください。コマンドラインでデータベースを指定しても、SQLファイル内で別の宛先が指定されている場合、データがそこに到達することは保証されません。

4
ikso

bzip2圧縮ファイル(.sql.bz2)の場合、以下を使用します。

bzcat <file> | mysql -u <user> -p <database>

OR

pv <file> | bunzip2 | mysql -u <user> -p <database>

進行状況バーを表示します。

1
TimSparrow

gunzipコマンドの-c, --stdout, --to-stdoutオプションを使用できます

例えば:

gunzip -c file.sql.gz | mysql -u root -p database
0
Ali Jazayeri

.sql.qzコマンドでエクスポートするには:-

mysqldump -uユーザー名-pデータベース| gzip> database.sql.gz

.sql.qzファイルコマンドをインポートするには:

gunzip <database.sql.gz | mysql -u usrname -p newdatabase

シャイレシュタパ

0
Shailesh Thapa