WordPressサイトのお引越に伴い、現在(旧)のサーバーのphpMyAdminからデータをエクスポートして新サーバーへインポートしようとしたら、Unknown collation: ‘utf8mb4_unicode_ci’というエラーが発生して正常にインポートできませんでした。
MySQLのバージョンによっては「utf8mb4」は使えない
調べてみると、このutf8mb4はUTF で4 バイト文字を扱うことができる文字コードらしいのですが、使用できるMySQLのバージョンが5.5.3 からという条件付き…。Mysqlのバージョンが異なるサーバー間でデータを移行する場合は注意が必要ですが、
5.5.3より低いバージョンのMySQLを使う場合は、エクスポートしたSQLファイル内のutf8mb4の記述をutf8に変換(置換)してあげることで正常にインポートできるようです。
「utf8mb4」を「utf8」に変換してインポート
エクスポートしたSQLファイルをテキストエディタで開き、utf8mb4の文字列をutf8に置換して、phpMyAdminからインポートします。wp-config.phpのdefine設定も確認
wp-config.phpのデータベースの文字セットの設定(DB_CHARSET)が「utf8」のままであれば、上記のようにSQL ファイル内の文字列置換だけでいけるようですが、define(‘DB_CHARSET’, ‘utf8mb4’); になっている場合はdefine(‘DB_CHARSET’, ‘utf8‘); に変更してあげる必要があります。
コメント