MySQL5⇒MySQL8へのデータ移転を実施いたしました
ご依頼の背景
MySQL のバージョンが低いと最新の WordPress にアップデートできません。運用歴の長いサイトでは MySQL のバージョンが古く、該当するケースが多く見受けられます。特にロリポップサーバーでは、データベースのバージョンアップのサポートは対象外となっており、契約者が自分で行うか、外部の業者に依頼する必要があります。今回ご相談いただいたのは、phpMyAdmin を使ってご自身でデータベースアップデートを試みたものの、データベースのデータが大きすぎてインポートが正常に行えないという理由でした。確かに、エクスポートデータは約 600MB 程度あり、データベースのサイズとしては大きめで、phpMyAdmin ではインポートが失敗しやすいサイズです。
対応内容
新規データベースの作成:新規に MySQL8 のデータベースを作成し、phpMyAdmin は使用せず、別のツールを利用して MySQL5 のエクスポートデータをインポートすることにしました。
データのインポート:
無事に MySQL8 のデータベースに MySQL5 のデータをインポートできたのですが、問題が発生しました。
問題の詳細
記事に絵文字が含まれていると、それらの記事を保存できないという問題が発生しました。これは古いデータベースから MySQL8 に移行する際によくある問題で、文字コードや照合順序に関する設定が原因でした。
具体的には、MySQL8 では utf8mb4 文字セットが推奨されており、絵文字を正しく扱うためにはこの設定が必要です。しかし、古い MySQL5 のデータベースでは
0