紺碧の空3

北海道をノマド的に生きる日々の覚書き

ブログツール 技術覚書

やっとMySQL4からMySQL5へデータ移行完了

投稿日:

あけましておめでとうございます、という話はいずれまた。

MySQL4からMySQL5のデータ移行をしたくてしたくてしょうがない

に書いたとおり、@niftyホームページサービス・lacoocanラクーカンスタンダード(旧ラクーカン)がMySQL5に対応して久しい。これをupdateしない限りは、wordpress本体も最新版に更新できず、サクサクと最新デザインのテンプレートにも変えられず、セキュリティにも問題が、と悪い事ずくめ。

しかしDB移行にともなう併用期間が設定されており、もし失敗したらどうしようと怖気づいてずっとやっていなかったのだが、幸い2014の正月休みは長い!旅行にいってもいいくらいだ!関西だろうが海外だろうが行きたい放題!なのを我慢したのは、ひょっとしたらこの作業ができるかな、と淡い期待があったから。

1/2、深夜現在、無事移行完了しましたーーー!ぱちぱちぱちぱち。

このあと、WordPress 2.8.6 → 3.8にup(!!そんな離れ業できるのか?!)

新テンプレに変更。

までやる目論見だが、一旦ここまでの作業でハマッた点を備忘メモ。

まず作業は、MySQL4からMySQL5のデータ移行をしたくてしたくてしょうがない にあるリンクどおり、

MySQL4データベースをご利用中の場合

の指示どおり新DBを作成、次に

[WordPress]ワードプレスのデータベース移行方法

をみながらMySQL4のDBからデータを引っこ抜き、MySQL5へ投入、最後にwordPressが見ているDBを切り替え(これも上リンクの手順どおり、wp-config.phpを修正するだけ)という流れ。

しかし何箇所か引っかかってしまったので順に説明する。

1)phpMyAdminにログインできない!?

結局、一番時間を費やした問題がこれ。新しくMySQL5のDBをつくったので、今MySQL4と5の両方を私は使えるはずなんだけど、はて、どうやってphpMyAdminから操作するのか?が全くイメージ湧かなかった。

phpMyAdminの中に、複数DB設定するようなメニューもないし・・・新DB名とパスワードを入れても”#1045 – Access denied for user”というエラーで入れない。

XREAのphpmyadminで複数DB管理

という記事を見つけて、なるほどそういうこともできるのかーとそっち方向の手段でいろいろさまよったけどダメ。

結局、@niftyの管理画面を見ていたら、「簡単インストーラー」のところにphpMyAdmin(MySQL5対応)というメニューが出来ているのを発見!もしかしてこれ?!と入れてみたら当たりでした・・・

つまり、MySQL4用と5用で別々のphpMyAdminをインストールさせてくれるんですね。(DBサーバの所在とか関係してるんだろうな)

早く気づけよ、という感じですが・・・上の赤文字のエラーがログインまわりっぽかったからなぁ。

2)データサイズが大きすぎてインポートできない

MySQL4からMySQL5のデータ移行とMovable Type5(MT5)の導入◇LaCoocan(ラクーカン)2012年8月

の方が懸念されているとおり、なーんにも考えないで全てのテーブルをexportしてimportしようとしたらエラー。これは当然といえば当然で、phpMyAdminのインポート画面に(最長: 8,192 KiB)とちゃんと書いてある。これ以下のサイズになるように、exportする際、テーブルの数を加減した。つまり、全部を一気に落とさないで、3テーブルずつとか、4テーブルずつとか。

1テーブルで最大長を超えてしまうものは、zip形式にしてからupすれば、phpMyAdmin側で解凍してくれたようで無事インポートできた。

3)TYPE=MyISAM のエラー

最大超以内のデータをインポートしようとすると、「CREATE TABLE IF NOT EXISTS・・・」「#1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘TYPE=MyISAM AUTO_INCREMENT=・・・」てな感じのエラー。

翻訳すると、SQL文がうんたら、MySQLのバージョンがうんたら言ってるので、TYPE=MyISAM AUTO_INCREMENT の部分にあたりをつけてgoogle先生に質問。すると

MySQLバージョン4.x以前からエクスポートしたsqlファイルはTYPE = MyISAM を ENGINE = MyISAM に変更する

とそのものズバリな記事が!ありがとうございます。

exportしたデータを開き、この箇所を置換。1テーブル1箇所ずつ。zipにしたデータは、修正後に改めて圧縮した。

——————–

はい、以上で無事、新しいDBに移行できたようだったので、最後wp-config.phpを修正したのだが、4箇所DB情報を直すべきところ、3ヶ所だけ直してupしてブログにアクセスしたら、見事「DBに接続できません」とエラーが出た。コリゃウッカリレベルなので割愛。

そこだけ直したら無事表示され、この記事も無事に新DB側に書き込まれているようだ。

めでたしめでたし。

スポンサーリンク








スポンサーリンク








-ブログツール, 技術覚書
-

執筆者:


  1. […] やっとMySQL4からMySQL5へデータ移行完了 […]

comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

Imsanityプラグインで画像ファイルのサイズに制限を。

早速やったこと追加。 画像ファイルをupしたときに、オリジナルサイズのでかいファイルがサーバに上がっちゃうのが嫌で、前は「functions.php」ってのを直していたんだけど、今回のテーマのコードは …

no image

WordPressのバージョンアップ

2.8.5-ja→2.8.6-jaにアップグレード。備忘録です。

覚書き

親指シフトと私

この記事は親指シフト(orz配列)で書いています。 —– 親指シフト。・・・その響きに私が思い出すのが、北の国から 巣立ちでのタマコの台詞「東京はもう卒業したの」(みたいなかん …

Arrowsシリーズでワンセグが映らない方へ

ワンセグアプリ初回起動時の、チャンネル設定に出てくる「都市」以外に住んでいる方は、下記と同事象かもしれません。 私の住んでいるところは、かなりへき地で、地デジの電波も薄いため、映らないのはしょうがない …

no image

新しいページタイトルの後ろにnewマークを表示する

wordpressを使い始めて、デフォルト機能にありそうなのに無くて、驚いた機能が「new」マークの表示でした。新しい記事のタイトル横に「new」とか「up」とか表示して、一定期間が経過したら消える、 …