时间:2021-05-23
utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。
采用utf8mb4编码的好处是:存储与获取数据的时候,不用再考虑表情字符的编码与解码问题。
更改数据库的编码为utf8mb4:
1. MySQL的版本
utf8mb4的最低mysql版本支持版本为5.5.3+,若不是,请升级到较新版本。
2. MySQL驱动
5.1.34可用,最低不能低于5.1.13
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';3.修改MySQL配置文件
修改mysql配置文件my.cnf
my.cnf一般在etc/mysql/my.cnf位置。找到后请在以下三部分里添加如下内容:
注目的地
[mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_ci init_connect='SET NAMES utf8mb4'4. 重启数据库,检查变量
SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';collation_connection 、collation_database 、collation_server是什么没关系。
但必须保证
系统变量描述
character_set_client(客户端来源数据使用的字符集)
character_set_connection(连接层字符集)
character_set_database(当前选中数据库的默认字符集)
character_set_results(查询结果字符集)
character_set_server(默认的内部操作字符集)
这几个变量必须是utf8mb4。
5. 数据库连接的配置
数据库连接参数中:
characterEncoding=utf8会被自动识别为utf8mb4,也可以不加这个参数,会自动检测。
而autoReconnect=true是必须加上的。
6. 将数据库和已经建好的表也转换成utf8mb4
更改数据库编码:ALTER DATABASE caitu99 CHARACTER SETutf8mb4COLLATEutf8mb4_general_ci;
更改表编码:ALTER TABLETABLE_NAMECONVERT TO CHARACTER SETutf8mb4COLLATEutf8mb4_general_ci;
如有必要,还可以更改列的编码
总结
以上所述是小编给大家介绍的如何更改MySQL数据库的编码为utf8mb4,希望对大家有所帮助!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
一、简介MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是mostbytes4的意思,专门用来兼容四字节的unicode。好在utf8mb4是
我在用mysql保存微信昵称,当插入昵称数据的时候,报错。于是做了如下工作:一、简介MySQL在5.5.3之后增加了这个utf8mb4的编码,mb4就是most
MySQL需要支持emoji表情符号版本需要大于5.5.3,且字符集需要设置为utf8mb4字符集。utf8mb4和utf8到底有什么区别呢?原来以往的mysq
一、创建mysql数据库1.创建数据库语法--创建名称为“testdb”数据库,并设定编码集为utf8CREATEDATABASEIFNOTEXISTStest
前言:在MySQL中,系统支持诸多字符集,不同字符集之间也略有区别。目前最常用的字符集应该是utf8和utf8mb4了,相比于utf8,utf8mb4支持存储e