phpMyAdminだと、容量が大きいファイルをMyAQLへインポートしようとすると、エラーが発生して正常にインポート出来ない場合があります。

Script timeout passed, if you want to finish import, please resubmit the same file and import will resume.

同じファイルを複数回インポートすれば全てのデータを取り込めるかも知れませんが、データが欠落していたりしたら気持ち悪いので、別の方法を使う方が安全です。その別の方法をエックスサーバーを例に説明します。

データベースの作成

まずはエックスサーバーの管理画面から、データベースを作成して下さい。名前は何でも構いません。仮に test としています。「アクセス権所有ユーザ」へMySQLユーザを割り当てることを忘れないようにしてください。

bigdumpのダウンロード

bigdump というファイルをこちらのサイトよりダウンロードして下さい。赤枠のところをクリックすると、bigdump.zipというファイルが保存されます。

解凍して、bigdump.php というファイルをPCの任意の場所へ保存して下さい。

bigdump.php の編集

メモ帳や秀丸と言った、テキストエディタで上のファイルを開きます。すると 40行目くらいに、以下の記述があります。

この箇所へ、

$db_server :サーバーのデーターベースサーバー
$db_name :さっき作ったデータベース名
$db_username :さっき割り当てた、アクセス権所有ユーザ
$db_password :アクセス権所有ユーザのパスワード

を入力して保存します。下の情報はダミーです。あなたが契約しているサーバーの情報に合わせて読み替えて下さい。

データベースファイルとbigdump.php をサーバーへアップロード

データベースファイルは、xxx.sql や、 xxx.sql.gz などのファイルのことです。このファイルと bigdump.php を、エックスサーバーの同じフォルダーへアップロードします。

どこでも構わないのですが、エックスサーバーを契約すると自動的についてくる、 yyy.xsrv.jp を今回は使います。

FFFTPやNextFTPで、エックスサーバーへ接続すると、トップレベル(root)に<契約したID>.xsrv.jp のフォルダーがあるはずです。下の画像はほぼマスクしているので分かりにくいですが。

そこをクリックして開きます。次に public_html をクリック。ツリー的には、下の図のような感じです。

この public_html へ、 bd などのフォルダーを作成します。名前は何でも構いません。

そのフォルダー内へ、 「xxx.sqlや xxx.sql.gz」と先ほど編集した「bigdump.php」をアップロードします。

bigdump.php の実行

アップロードが完了したら、

http://<契約したID>.xsrv.jp/bd/bigdump.php

を開いてみてください。下のようなページが表示されるはずです。表示されたら、Start Import をクリック。

ファイルの大きさにもよりますが、数十秒~数分程すると、下のような画面が表示されます。

この画面が表示されたら、インポートが完了です。

お疲れ様でした。

最後に

如何でしたでしょうか?phpMyAdminだと、容量が大きいデータの場合、うまくインポートが出来ない場合があります。そのようなことに遭遇したら、bigdumpを一度お試し下さい。

最初はハードルが高く感じるかも知れませんが、慣れるとさほど難しくはありません。