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

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

CAPTCHA


関連記事

no image

wordpress導入

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

wix( CMSタイプのオンラインホームページビルダー)を使ってみた

今日はやろうと思ってたタスクを三つくらい残してしまったけどもう挫折したのでカーリング見ながら与太話を。 最近、前の記事にも書いたけど仕事でCMSサービスを探したり、蜃気楼の情報をまとめたりしたかったの …

markdown記法の世界。WordPressオフライン執筆沼に引き続き、はまり中(その3)

わー、今、ほとんど書き終わったのに、一発で全部とんじゃった! ブロックエディタ、こわー。自動保存されないの? というわけで夜中です。 これじゃあ、PC選んでた時と変わらないよ。。。 Contents …

no image

WordPressとMovableTypeの比較。使用感まとめ

昨年9月ごろにレンタルサーバを借り、MovableTypeとWordpressをインストールして使い始め3ヶ月ほどが経った。 結局・・・MovableTypeはアンインストールしました。勉強にはなった …

googleスプレッドシートの内容をgoogleカレンダーに読み込む

前から懸案だった、googleスプレッドシートに入力済みの表形式データをgoogleカレンダーに自動で読み込ませるスクリプトを作った。 この表は観測記録なので、日付データとそれに紐づく観測場所や内容が …











スポンサーリンク