pagetaka

写真、PC、ネット、岡山、旅の話題をお届けします

WP:データベースの移行で一苦労(MySQL4.0から5.5)。Wordpress3.0.3未満脆弱性対策進行中

MySQLサーバのバージョン: 4.0.27、PHP のバージョン: 4.3.9から、サーバのバージョン: 5.5.27、PHP のバージョン: 5.4.6へWordPress2.8.6のデータ(=MySQLのエクスポート)を書き出し、移し替えました。
本当は、別URLなのでURLに関係するデータ部分を色々書き換える必要もあるのですが、その部分は省略し、ともかく、移行できるかどうかの確認です。

sqlデータで書き換えたのは、各「テーブル構造」の最後の方にある「TYPE=MyISAM」を「ENGINE=InnoDB」に…。これも、受け入れ側のDBバージョンによっておそらく異なるんでしょうね…。爺の今回の例ではこれで良かったみたい…ということでお許しのほど。
f:id:PageTAKA:20121022061904j:plain
こここに至るまでがかなり難渋しました。4.0.27からそのままエクスポートし、別環境(5.5.27)にインポートするとエラーがでます。「#1064…Syntax error」でした。何度これを見たことでしょう。書き出し方法や、sqlの部分的書き直しなど色々やってみましたがNG。ネット徘徊して色々ヒントを探しますがどうもクリアできませんでした。その結果、成功したのが、「TYPE=MyISAM」を「ENGINE=InnoDB」に書き直す方法でした。
Wordpress3.0.3未満の脆弱性対策のため、該当するblogを対策するため準備しているところですが、進展はわずかです。本番では、一旦、現在のDBを削除し、新しい環境を用意したうえで、これまでのsqlデータを埋め戻す作業です。失敗すれば、元blog消滅、新しいblogには旧記事継承できず、などということになりかねません。無謀なことはできませんので、TAKAのPCにサーバ環境を用意して試していますが、ファイル容量、接続タイムアウト、などさまざまな原因でNGが続いています。成功してもそれが本番環境とは無縁のため、似たような環境での検証も欠かせません…。まず、準備環境で成功させるという、本番まではかなり手数が長そうです…シクシク。



[2012-10-22追記]
エラーは具体的にはつぎのような具合でした。
#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'…