2012-03-06

phpMyAdminのデータを移行してみた。

ECCUBEの2.0系から2.11.4の新しいバージョンに移行するため、phpMyAdminでデータを移行した。

昔のMySQLでは勝手に文字コードがlatin1_swedish_ciになっていることがあるため、画面でみても、エクスポートしても文字化け。

1から入れ直ししなければいけないかなぁ~と思い、google先生に色々と聞いてみたら、「秀丸」(テキストエディタ)で何とかできそうとのこと。

移行するテーブルも限られているため、そのやり方で対応。


【手順】

1.必要なテーブルをエクスポート。
(エクスポートしたテーブル)
・商品関連
dtb_products
dtb_product_categories
dtb_category
dtb_products_class
dtb_category_count
dtb_category_total_count
dtb_review
・顧客関連
dtb_customer
dtb_other_deliv
・受注関連
dtb_order
dtb_order_detail
dtb_order_temp
dtb_other_deliv
dtb_shipping (これは2.4にはないテーブル。dtb_other_delivの内容を部分的に移す。)
・メール履歴
dtb_mail_history
2.エクスポートしたデータを、秀丸で開くと立派に文字化けしている。
3.「欧文」で保存する。この時点での見た目は、まだ文字化けている。
4.もう1度「秀丸」で開く直すと、データの文字はきちんと治っている。
5.2.11用に作り直していたデータベースをエクスポートし、インポート用データをつくる。
6.新たに作られたインポート用データを所定のテーブルにインポート。


※注意点

・dtb_customer [salt] に関して
http://svn.ec-cube.net/open_trac/ticket/1196 を参照

・シーケンス値
データを移行する際、「dtb_・・・・_seq」というテーブルがあるので、その値を調整

・ECCEBE2.4.4から2.11.4へ会員データ(AUTH_MAGIC値)
2.11へ移行するとパスワードのAUTH_MAGIC値が変わっている。
data/config/config.php のAUTH_MAGIC値を、2.4バージョンのmtb_constants.phpAUTH_MAGIC値に変更

・AUTH_MAGIC値を変更してしまうと、管理者のID/PWでログインできなくなってしまう。
「data/class/pages/admin/LC_Page_Admin_Index.php」 の 「$this->arrErr…」の部分をコメントアウトにする。
管理者パスワードをチェックする lfCheckError関数を飛ばしてしまうため、どんなパスワードでもログインできるようになる。
ただし、ログイン後は速やかにパスワードを再設定し、変更ファイルを元の状態に戻すことに注意。


・ECCUBE2.11以降のSmartyタグの違い
http://www.hiro-blog.com/2011/06/ec-cube-2-11%E4%BB%A5%E9%99%8D%E3%81%AEsmarty%E3%82%BF%E3%82%B0%E3%81%AE%E9%81%95%E3%81%84%E4%B8%80%E8%A6%A7.html を参照


0 件のコメント:

コメントを投稿