【MySQL】テーブルの文字コードをutf8からutf8mb4に変換する
問題
utf8のテーブルをutf8mb4対応したいのですが、これだとTABLEのDEFAULT CHARSET だけが変わってしまって、カラムの CHARACTER SET は変わらないみたいです。
ALTER TABLE COLLATE 'utf8mb4_general_ci';

答え
全体的に変換する場合は以下で。
alter table xxxxxxxx CONVERT TO CHARACTER SET utf8mb4;
必要なら COLLATE も指定できる。
alter table xxxxxxxx CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
テーブルもカラムも変更される。

なお、データ量に応じて時間がかかるので、実行時間に注意すること。
コメント