紺碧の空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

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

関連記事

no image

wordpress導入

雑感用のブログとして、WordPressを導入しました。 使用しているレンタルサーバ「Lacoocan(ラクーカン)」では「簡単インストーラー」でほぼワンクリックでインストールできた。バージョンはバー …

no image

弥生の青色申告、で昨年度のデータを使いまわす

そりゃ、私だって事務仕事、大嫌いですよ?できればやりたくない。後回しにしたい。 システムエンジニア(業務系)というのが事務システムを作る仕事であると気づいたとき。 ・・・どうしようかと思いました(会社 …

ロリポップへの引越し、データ移行でやったこと(概要編)

疲れました。。。。 ここまでやるつもりはなかった?ところまで一日でやってしまった。 というか、寄り道が多かった。 でも今書かないと、絶対に絶対に忘れる!と思ったので、作業メモを作ります。 昨日までの流 …

no image

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

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

SQLiteでWordPressは動くだろ

  仕事でWordPressを使ってみることになった。もっとはやくやってもよかったのになんで気づかなかったんだろ。まあ気づけて良かった。 経費の更なる節減のため、今回はWordPress+S …