MySQL5.0.27に格納されたNucleusのデータを抽出しようとしたら、もう何をどう触っても文字化けが直らない。本家サイトのマニュアルに今の文字コードを確認するSQL文を発見。 [SQL] SELECT character_set_name, collation_name FROM information_schema.columns WHERE table_schema = your_database_name AND table_name = your_table_name AND column_name = your_column_name; [/SQL]character_set_namecollation_namelatin1latin1_swedish_ci
って帰ってくるじゃないですか。DBを作り直すしかない???
結局、
[1]Nucleusの管理画面からDBを『nucleus.dat』として保存(UTF8で保存のこと)
[2]Nucleus用のDBをmysqldumpでエクスポート『dbexp.dat』
[3]『dbexp.dat』内のlatin1をutf8へ置換
[4]『dbexp.dat』をDB名”Nucleus2″としてインポート
[5]phpAdminからNucleus2から全テーブルのデータをTruncate
[6]phpAdmin上で Nucleus2に対して『nucleus.dat』のファイルを実行する
[7]一部テーブルのCREATEが出来ない
[8]『nucleus.dat』のファイルからDROP TABLEとCREATE文を削除
[9]phpAdmin上で Nucleus2に対して『nucleus.dat』のファイルを実行する
[10]phpAdminから日本語が正常に表示できるか確認
[11]my.iniの見直し(skip-character-set-client-handshakesの設定)
[12]Nucleus2のDM名を今の元の差し替える
で無事復帰。MySQL5の文字コードはいろいろトラブルが多いみたいで見事に巻き込まれ。
Comentarios