Mariadb中文字符集问题处理

默认情况下Mariadb的中文无法正常显示,需要设置默认字符集才能正常显示中文。

注: 修改的实际目的就是,Client和Server端的字符集保持一致

1.全局设置方法

  1. 编辑配置文件,增加默认参数 vi /etc/mysql/my.cnf
  2. 重启 systemctl restart mariadb

my.cnf 中增加下面一段 UTF8编码的默认配置。

[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci'
init_connect='SET NAMES utf8'
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake

[mysql]
default-character-set=utf8

重启MariaDB即可

systemctl restart mariadb

查看字符集方法: show variables like "%character%"

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     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
8 rows in set (0.002 sec)

2. 其他问题

如果上述方法还是有问题,需要看一下系统默认使用的字符集。

END(Moguf)