WordPressのDB_CHARSET問題解決

昔のWordpress2.2ぐらいより前からアップグレードしてきた場合、MySQLのDB内のコードがUTF-8でも、ちゃんとUTF-8ではいってなくてphpMyAdminとかでも化けちゃうやつの解消。
また、wp-config.php内で

define('DB_CHARSET', 'utf8');

とデフォルトの状態でも化けないようにする。
要は、昔、「SET NAMES ‘utf8’ 」といれておかないといけなかったのだけどいれてなくてlatin1で挿入されているデータベースの変換方法です。MySQLはよくわからんのでもっといいやり方あるかも
データベースのDUMP

mysqldump -u DB_USER -p'DB_PASSWORD' DB_NAME --default-character-set=latin1 > mysql.dmp

DUMPしたバックアップファイルの上の10行目付近を書き換える

< /*!40101 SET NAMES latin1 */;
> /*!40101 SET NAMES utf8 */;

データベースのリストア

mysql -u DB_USER -p'DB_PASSWORD' --default-character-set=utf8 DB_NAME < mysql.dmp

というかこれの対処しないと、管理画面からエクスポートすると一部文字化けして使えんのでがんばって調べました(^^;

コメントを残す

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

CAPTCHA