iCLUSTA+のDBで文字コードにエラーが出た場合の対処法(※utf8mb4は使用不可)

先日テスト環境からデータベースを本番環境(iCLUSTA+)に移行したところ、

Unknown collation: ‘utf8mb4_unicode_ci’

※サーバのバージョンが低いなどの理由でutf8mb4が使えないということらしいです。

というエラーが出てしまったのですが、以下の記事のおかげで対処できました。
ありがとうございます!

参考サイト

【WordPress】DBの文字コードをのエラーがでたときの対処法メモ – Qiita

phpMyAdminでテーブルの文字コード変換をしたのは初めてでしたので、自分用にもメモ代わりに記事にしておきたいと思います。

※スクリーンショットは、ローカルのMAMPのものです。

1. phpMyAdminにて文字コードを変換し、エクスポート

  1. 「SQL」のタブをクリックし、その下のテキストエリアに、

    ALTER TABLE 【テーブルの名前】 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

    と入力し、「実行」ボタンをクリックします。
    (例では、【テーブルの名前】の部分に、wp_commentmetaを入力しました)

    ↓こんな感じ。

    20161123-1

  2. 照合順序が「utf8_general_ci」に変わっていることを確認します。
    この方法で、1つ1つテーブルを変換します。

    20161123-2

  3. 全てのテーブルを変換し終わったら、エクスポートします。

2. エクスポートしたSQLの中身を修正

エクスポートしたSQLをテキストエディタで開いて、
「utf8mb4_unicode_520_ci」→「utf8_general_ci」
「utf8mb4」→「utf8」
に置換します。

※サーバー移行の場合は、以下の箇所のURLなども修正します。

(1, 'siteurl', 'http://www.○○○○.com', 'yes'),
(2, 'home', 'http://www.○○○○.com', 'yes'),

3. wp-config.phpを修正

define('DB_CHARSET', 'utf8mb4');
    ↓
define('DB_CHARSET', 'utf8');

コメントを残す

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