mariadb 将 character_set_client 从 latin1 修改为 utf8mb4
发表于 : 2024年 1月 17日 16:09
以前没有注意到这个问题,直到在debian12上新装的mariadb-server上导入数据库后发现中文出现了乱码,前后也检查过了数据库的字符集,没发现问题
使用下面的指令得到
这也难怪中文字符会乱码,编辑
即可解决
重新进mariadb shell,可以看到修改生效了
Reference: Change MySQL default character set to UTF-8 in my.cnf?
代码: 全选
SHOW CREATE DATABASE database_name;
代码: 全选
SHOW VARIABLES LIKE 'character_set_client';
代码: 全选
MariaDB [nextcloud]> SHOW VARIABLES LIKE 'character_set_client';
+----------------------+--------+
| Variable_name | Value |
+----------------------+--------+
| character_set_client | latin1 |
+----------------------+--------+
1 row in set (0.001 sec)
/etc/mysql/mariadb.conf.d/50-client.cnf
,在 [client]
字段下添加
代码: 全选
default-character-set=utf8mb4
重新进mariadb shell,可以看到修改生效了
代码: 全选
MariaDB [(none)]> SHOW VARIABLES LIKE 'character_set_client';
+----------------------+---------+
| Variable_name | Value |
+----------------------+---------+
| character_set_client | utf8mb4 |
+----------------------+---------+
1 row in set (0.001 sec)