ネットプレイな日々

大人になってもレベルアップしたい!バドミントン上達への日々

MySQLのデータをインポートする際に、max_allowed_packetを変更したら幸せになった!

   

クラウドサービス
このブログを開始して4年ほど経過しました。
激安レンタルサーバのロリポップを借りて運用してましたが、最近は随所で遅くて新規投稿にも支障が出はじめて困っていました。

重い腰を上げてAmazonEC2に移行したのですが、その際にはまった事を備忘録的にご紹介。

SPONSORED LINK

網元で運用

ブログ環境を構築するために一から準備するのも面倒だったので、公開されているAMIの網元を今回利用させていただきました。

AWS + Nginx + WordPress | 超高速 WordPress AMI 網元
AMIが便利

他ブログでも利用してますが、やっぱりAWS最高!
OSセットアップなどすっ飛ばして利用できるのが素晴らしいですね>AMI

 

データインポートにはまる

網元で環境準備ができたらsshやsftpなど各種設定してブログの引っ越し作業を行ったのですが、ここではまったのがMySQLのデータ移行。

よくあるphpMyAdminでの移行手順が参考になるかと思いますが、私はphpMyAdminは使いませんでした。
[M] ロリポップ! でデータベースをMySQL5.6.11にアップデートする手順 | mbdb (モバデビ)
phpMyAdminの利用は参考になりましたが・・

なぜphpMyAdminを利用しなかったのか?
実はデータ容量が多すぎたんです。

移行元のロリポップ:phpMyAdminでSQLファイルをエクスポートしたらそれで40MB近くの容量。
もちろん不要テーブルなどは除いてエクスポートなど行ってこのデータ量(涙)

このサイズになるとphp側の設定やNginxでポストデータの容量設定が必須となります。
Bigdumpを使おうと思いましたが結局設定する個所はあまり減りません

もう網元で設定するとなると設定箇所が多くなるので、すっぱりphpMyAdminなどWebインターフェース系ツールはをあきらめてmysqlコマンドを打ってインポートすることにしました。

 

myqlコマンドではまる

さてエクスポートで生成されたSQLファイルをmysqlコマンドを打ち込んでインポート処理を行ってみました。

mysql -u[ユーザー名] -p -hlocalhost –default-character-set=utf8 [データベース名] < エクスポート済みSQLファイル う・・・ ファイル容量がでかくて時間がかかると見込んでいましたが、最後にエラー発生。 よくよく見ると受け付けるパケットサイズの設定を変えろとの事。 ということで/etc/my.cnfのmax_allowed_packetの値を変更し再度コマンド実行したら無事インポート完了できました。 ってかデフォルトが1MBって少ないですよね?  

まとめ

コマンド打ち込んで作業するのって「黒い画面いやだ」という方も多くて、ハードル高いようですが慣れると操作が速くなるので結果的に作業時間短縮になります。

作業時間短縮することによりサーバ移転も早く終わり、ブログ公開も引き続きできるので今回はphpMyAdmin使わないで正解だったのでは?と考えてます。

ダウンタイムを減らす方法。
ちょっと今後も移転する際には気にして作業内容考えてみます。

 - How to ,