trash-area.com ≫ blog ≫ プログラミング ≫ mysqlのインポートとエクスポート。(さくらレンタルサーバ)
毎回毎回、小ハマリしてしまうのでメモです。
これはとりあえず、phpmyadminを使用。
データ量に応じてちょっと分岐。
レコード件数もたいしたことない場合には、形式は「SQL」で「構造」+「データ」まるごと。
基本はデフォルトのままで、圧縮形式を(さくらが読める) zipで。
レコード件数が多いもの(10万くらい?)は、いったん形式「SQL」で「構造」のみエクスポート。
そのあと、形式「CSVデータ」でデータをエクスポート。
オプションは「行の終端記号」を「\n」に。
先にSQLでダンプしたものをphpmyadminでインポート。
CSVでダンプしたものは、サーバ側のどこかにupload。(ここでは ~/tmp/)
シェルログインして以下のコマンドを実行。
$ unzip tbl_xxxxx.csv.zip $ mysqlimport --host=mysql${999}.db.sakura.ne.jp --user=${USER} --password=${PASS} --local --replace --fields-terminated-by=';' --fields-enclosed-by='"' ${DB_NAME} tbl_xxxxx.csv |
※${DB_NAME} で指定したデータベース上の tbl_xxxxx.csv から拡張子を抜いたものが対象のテーブルになります。
※わざわざ解凍してるのは、zip形式のままだと何故か文字化けしてたので。謎です