Dockerで大容量のDBデータをインポートしたい場合は、コンテナに入ってから実行する

プログラミング
スポンサーリンク

はじめに

WSL2で、ホストからMysql コンテナに3GBのデータをインポートしようとした際、詰まったので共有します

結論

//dumpファイルをMysqlコンテナにコピー
docker cp [import file name] [container id]:[container file path]

//Mysqlコマンドでログイン
mysql -u [user name] -p [db name]

//Sourceコマンドでインポート
source [container file path]

詳細

最初、コンテナの外からインポート実行しましたが、コマンド実行中のまま止まってました。

docker exec -i mysql -u [user name] -p [db name] > [import file path]

処理を止めてDBを見にいっても、何も書かれていないので動いていないと判断。

インポートファイルのサイズが大きい場合、Mysqlの中に入って実行しない駄目っぽい記事を見つけ、解消。

おわりに

再度Importファイルを指定しようとしたら、サイズが0になってたので、以後コピーしてから実施しよう。。
Exportしなおすのに時間を浪費してしまった。

コメント