MySQLの文字コードをutf8mb4に変更(MariaDB)(CentOS7)

提供:あわ自由帳

既存 DB の CHARACTER SET を utf8mb4 にします。utf-8から変えるときは、文字化けがなかったが、他の文字コードの場合は文字化けがありうるので要注意です。

バージョン確認

[root@host4 ~]# mysql --version
mysql  Ver 15.1 Distrib 5.5.50-MariaDB, for Linux (x86_64) using readline 5.1

MySQL設定

server.cnf 設定ファイル編集

[root@host4 ~]# vi /etc/my.cnf.d/server.cnf

[mysqld]
character-set-server = utf8mb4 ← 変更
collation-server   = utf8mb4_unicode_ci ← 追加

client.cnf 設定ファイル編集

[root@host4 ~]# vi /etc/my.cnf.d/client.cnf

[client]
default-character-set = utf8mb4 ← 変更

mysql-clients.cnf 設定ファイル編集

[root@host4 ~]# vi /etc/my.cnf.d/mysql-clients.cnf

[mysql]
default-character-set = utf8mb4 ← 変更

[mysqldump]
default-character-set = utf8mb4 ← 変更

MariaDB再起動

[root@host4 ~]# systemctl restart mariadb  ← MariaDB再起動

[root@host4 ~]# systemctl status mariadb
● mariadb.service - MariaDB database server
   Loaded: loaded (/usr/lib/systemd/system/mariadb.service; enabled; vendor preset: disabled)
   Active: active (running) since 月 2016-01-11 10:06:31 JST; 25s ago
 Main PID: 6670 (mysqld_safe)
   CGroup: /system.slice/mariadb.service
           ├─6670 /bin/sh /usr/bin/mysqld_safe --basedir=/usr
           └─6839 /usr/libexec/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib64/mysql/plugin --log-erro...