少し前に、MovableTypeの文字化けで頭を抱えたのに、、、次はZenCartで・・・。
う~、しっかりした知識がないばっかりに・・・。
やりたかったのは、商品IDを一括返還したかっただけなんですが、、、
例:
変更前 → Sample
変更後 → sample
商品が200個くらいあったんで、一括でできないかと思い。。。
最終的にはphpMyAdminで一括変換出来たんですが、とりあえず文字化け記事を。
- phpMyAdminで事前にエクスポート
- 念のためSSH接続でSQLデータをdump
- Easy Populateで全商品削除
- Easy Populateで一部データベースが削除できないエラー発生
- データベースの中身を削除
- phpMyAdminでバックアップしたファイルをインポート
- 文字化け発生(焦る)
- SSHでdumpデータを復旧
- 問題解決
EasyPopulateのエラー
管理画面に
Deleting of product data debris failed! please see the debug log in your uploads directory for further information.
って!!!??
EasyPopulate導入時に作成したtempフォルダに「ep_debug_log.txt」がありました!
Product debris corresponding to the following product_id(s) cannot be deleted by EasyPopulate:
123(URLで使われるID):123456(セッションID?)
It is recommended that you delete this corrupted data using phpMyAdmin.
phpMyAdminで事前にエクスポートしたデータは、文字コードはEUC。
コメントは文字化けしてないけど、データが文字化けしてる。。。
UTF-8で再読み込みするとデータの文字化けは直るけど、コメントが文字化け。(まぁ、そうですよね)を見ると、確かに
こういったときって、どうすればいいのかなぁ。
SSHでのdumpコマンドもよくわかってなかったので、以下を参照
復旧時は、パスワードも必要
$ mysql -u root -p データベース名 < dump.sql
パスワードを聞かれるので、入力。
今回は、これで文字化けも解消。
うぅ、、、知識が無いって・・・。
■環境
ZenCart:Zen Cart 1.3.0.2-l10n-jp-5
PHP:5.2.11
MySQL:5.0.67
phpMyAdmin:2.11.9.5

