先日、WordPress絡みでテストサーバーのダンプデータを本番サーバーに移行する為、いつもの様にテストサーバーのphpMyAdminからエクスポートを行い、パスを全て新しいアドレスに置換して本番サーバーの方にインポートしてみたのだが、何故か以下の様なエラーが。
インポートするデータを受信できませんでした。ファイル名が送信されていないか、ファイルサイズが PHP の設定で許可された最大値を超えています。FAQ 1.16をご覧ください
どうやら、インポートするファイルサイズが大きいとの事。ちなみにファイルサイズは2.9MB。決して大きいわけでは無いが、phpMyAdminのインポートするファイルの横に(最長: 2,048 KiB)と表記されている。最大でこのサイズを超えるファイルはアップロードできないとの事なので、サーバー内のphp.iniを探し、それを開いて以下のスクリプトを追記してみる。
; Maximum allowed size for uploaded files.
upload_max_filesize = 30M
そして、phpinfo.phpを作成してサーバーの情報を見てみると、upload_max_filesizeが30Mに変更されている。しかし、phpMyAdmin側は(最長: 8,192 KiB)になっている・・・。まあこれで、とりあえず最大ファイルアップロードサイズまでは無いので上手くいくだろうと思いきや、また同じメッセージ。ファイルを圧縮したり、極端にファイルサイズを小さくして試してみたのだが、全て同じエラーが・・・。私自身あまり詳しくないので、久々に参った。最悪は手作業でコンテンツをいれて地道にセットアップするしか無いかと半ばあきらめていた所、「BigDump」というphpで作られたツールを発見!どうやらこれでブラウザから簡単にインポートできるらしい。半信半疑で早速試してみた。まずは公式サイトからスクリプトをダウンロード。解凍するとbigdump.phpというファイルはひとつだけ。エディタでそれを開き、設定箇所に、接続サーバー(通常はlocalhost)、DB名、ユーザー名、パスワード、それとDB接続文字コード(utf8)を書き込む。続いてhtdocs配下に適当な名前でフォルダを作成。その中に編集したbigdump.phpとテストサーバーからエクスポートしたSQLファイルをそのままアップロード。後はブラウザからbigdump.phpにアクセスして、”Start Import”ボタンを押すだけ。ファイルサイズが小さかったため、あっという間に処理が完了!どうせ上手くいっていないだろうと思いながらphpMyAdminを見てみると、上手くインポートされているではないか!助かりました!私と同じ様な問題にぶつかった時、ダメもとでbigdump.php試してみてはいかがでしょうか。もちろん自己責任でお願いいたします。最後に、上手くインポート出来たらフォルダ毎サーバーから削除する事を忘れずに。
on 6月 11th, 2013 at 15:11:46
はじめまして。私joomlaサイトを管理しているものです。非常に有益かつ解りやくかった為この記事を私のサイト内でリンクさせていただきました。
on 9月 12th, 2014 at 1:19:28
[…] しかも、普通にインポートしても読み込めないので、こちらのサイト(「Bamboo!」)を参考にBigDumpというツールを使ったりしましたが、2ヶ月くらい前の記事まで読み込めませんでした。 […]