如何更改MySQL数据库的编码为utf8mb4

 更新时间:2020年02月09日 10:08:26   作者:jerry-89  
utf8mb4编码是utf8编码的超集,兼容utf8,并且能存储4字节的表情字符。 这篇文章给大家介绍了更改MySQL数据库的编码为utf8mb4的相关知识,感兴趣的朋友一起看看吧

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位置。找到后请在以下三部分里添加如下内容: 

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

注目的地

[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 SET utf8mb4 COLLATE utf8mb4_general_ci;

更改表编码:ALTER TABLE TABLE_NAME CONVERT TO CHARACTER SET utf8mb4 COLLATEutf8mb4_general_ci; 
如有必要,还可以更改列的编码

总结

以上所述是小编给大家介绍的如何更改MySQL数据库的编码为utf8mb4,希望对大家有所帮助!

相关文章

  • Mysql Innodb存储引擎之索引与算法

    Mysql Innodb存储引擎之索引与算法

    索引对数据库有多重要,我想大家都已经知道了吧,下面这篇文章主要给大家介绍了关于Mysql Innodb存储引擎之索引与算法的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • MySQL修改默认字符集编码的方法

    MySQL修改默认字符集编码的方法

    这篇文章主要介绍了MySQL修改默认字符集编码的方法的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • mysql触发器中包含select语句问题

    mysql触发器中包含select语句问题

    这篇文章主要介绍了mysql触发器中包含select语句问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Mac下安装mysql5.7.18的详细步骤

    Mac下安装mysql5.7.18的详细步骤

    这篇文章主要为大家详细介绍了]Mac下安装mysql5.7.18的详细步骤,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-05-05
  • MySQL慢查询的坑

    MySQL慢查询的坑

    这篇文章主要介绍了MySQL慢查询的坑,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • mysql 5.7.18 Archive压缩版安装教程

    mysql 5.7.18 Archive压缩版安装教程

    这篇文章主要为大家详细介绍了mysql 5.7.18 Archive压缩版安装教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09
  • mysql索引覆盖实例分析

    mysql索引覆盖实例分析

    这篇文章主要介绍了mysql索引覆盖,简单说明了索引覆盖的概念,并结合实例形式分析了mysql索引覆盖的相关应用与操作注意事项,需要的朋友可以参考下
    2019-07-07
  • MySQL数据库事务隔离级别详解

    MySQL数据库事务隔离级别详解

    这篇文章主要介绍了MySQL数据库事务隔离级别详解的相关资料,需要的朋友可以参考下
    2017-03-03
  • 详解MySQL中的分组查询与连接查询语句

    详解MySQL中的分组查询与连接查询语句

    这篇文章主要介绍了MySQL中的分组查询与连接查询语句,同时还介绍了一些统计函数的用法,需要的朋友可以参考下
    2016-03-03
  • mysql-5.7.21-winx64免安装版安装--Windows 教程详解

    mysql-5.7.21-winx64免安装版安装--Windows 教程详解

    这篇文章主要介绍了mysql-5.7.21-winx64免安装版安装--Windows 教程详解,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-09-09

最新评论