mysqldumpで作成したバックアップファイルをphpMyAdminでリストアする機会があったので、
備忘録として問題点などをまとめました。
●バージョン
mysql:5.1
phpMyAdmin:2.11
1.
エラーメッセージ:Lost connection to MySQL server during query
ん~、クエリを投げている最中にコネクションが失われたということはクエリが長いのか?
ということでバックアップファイルのクエリを見てみると、
INSERT INTO `table1` VALUES (1,a),(2,b),(3,c) ・・・;
のようなかたちで複数行INSERTになっていました。
mysqldump実行時にoptionを指定しないとデフォルト設定で複数行INSERTがONになるようです。
そこで、下記のように「--skip-extended-insert
」を追加して複数行INSERTにならないようにしました。
> mysql
--skip-extended-insert
-u ユーザ名 -p データベース名
参考:http://dev.mysql.com/doc/refman/5.1/ja/mysqldump.html
2.
エラーメッセージ:No database selected
phpMyAdminの管理画面でデータベースを選択していない状態でインポートを行った場合に表示されます。
管理画面でデータベースを選択するか、もしくは、バックアップファイルの先頭(「create database」をしている場合はその後ろ)に
use データベース名;
と追記してインポートします。