MariaDBの文字コードを確認する!(Rocky Linux 9)

MariaDBの文字コードを確認して、文字コードを「utf8mb4」に変更します。

変更前のMariaDBの文字コードを確認する!

MariaDBの文字コードを確認します。

# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 10.11.2-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8mb3                    |
| character_set_connection | utf8mb3                    |
| character_set_database   | latin1                     |
| character_set_filesystem | binary                     |
| character_set_results    | utf8mb3                    |
| character_set_server     | latin1                     |
| character_set_system     | utf8mb3                    |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.002 sec)

MariaDB [(none)]> quit
Bye

server.cnfを変更する!

「/etc/my.cnf.d/server.cnf」の「mysqld」のセクションに以下の設定を追記します。

[mysqld]
character-set-server=utf8mb4

client.cnfを変更する!

「/etc/my.cnf.d/client.cnf」の「client-mariadb」のセクションに以下の設定を追記します。

[client-mariadb]
default-character-set=utf8mb4

MariaDBを再起動する!

MariaDBを再起動します。

# systemctl restart mariadb

変更後のMariaDBの文字コードを確認する!

「character_set_filesystem」、「character_set_system」以外が、「utfmb4」になっていることを確認します。

# mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.11.2-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8mb4                    |
| character_set_connection | utf8mb4                    |
| character_set_database   | utf8mb4                    |
| character_set_filesystem | binary                     |
| character_set_results    | utf8mb4                    |
| character_set_server     | utf8mb4                    |
| character_set_system     | utf8mb3                    |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.001 sec)

MariaDB [(none)]> quit
Bye

おわりに

MariaDBの文字コードは、「utf8mb3」のため、絵文字なども使用できるように「utf8mb4」に変更しました。

参考情報

関連記事

関連書籍(Amazon商品リンク)