wechat_ling
wl_channel_consumer nickname
wl_consumer nickname alter table wl_channel_consumer modify column `nickname` varchar(150) CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci' DEFAULT NULL COMMENT '昵称';
alter table wl_consumer modify column `nickname` varchar(255) CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci' DEFAULT NULL COMMENT '昵称';
1366
# 全局已经是mb4,没必要指定列级字符编码
mysql> show variables like '%chara%';
+--------------------------+----------------------------------+
| Variable_name | Value |
+--------------------------+----------------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
8 rows in set (0.00 sec) +--------------------------+----------------------------------+
| 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/local/mysql/share/charsets/ |
+--------------------------+----------------------------------+
1. MySQL的版本

utf8mb4的最低mysql版本支持版本为5.5.3+,若不是,请升级到较新版本。

2. MySQL驱动

5.1.34可用,最低不能低于5.1.13

3.修改MySQL配置文件

修改mysql配置文件my.cnf(windows为my.ini)

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'

  1. 重启数据库,检查变量

    SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';

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

collation_connection utf8mb4_unicode_ci

collation_database utf8mb4_unicode_ci

collation_server utf8mb4_unicode_ci

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;

如有必要,还可以更改列的编码

最新文章

  1. Android核心组件 Activity组件
  2. 微服务实战(二):使用API Gateway--转
  3. Underscore.js基础入门
  4. Maven初级学习(二)Maven使用入门
  5. UITableView出现卡顿如何处理
  6. Unity3D中的函数方法及解释
  7. 基本DOS命令之 netstat 命令详解
  8. JOptionPane弹框常用实例
  9. 70. Climbing Stairs(easy, 号称 Dynamic Programming 天下第一题)
  10. python小白——进阶之路——day2天-———变量的缓存机制+自动类型转换
  11. 【算法】—— LRU算法
  12. 3dmax导入模型,解决贴图不显示的问题
  13. msf客户端渗透(七):跳板、post模块、自动运行脚本
  14. 微信小程序template模板与component组件的区别和使用
  15. debian9部署jenkins
  16. axure 认证授权注册码2017-12-25
  17. PostgreSQL数据库创建只读用户总结
  18. phalcon框架安装
  19. TV 开发相关
  20. 利用spring的ApplicationListener监听某一类事件的发生

热门文章

  1. SQLI-LABS学习笔记(一)
  2. 2019-2020-1 20199328《Linux内核原理与分析》第五周作业
  3. 2019-2020-1 20199328《Linux内核原理与分析》第二周作业
  4. JAVA企业级应用TOMCAT实战(一)
  5. Java中的小数运算与精度损失
  6. windows 查看被占用的端口信息
  7. opencv-2-VS2017与QT显示图像
  8. Eclipse Mac OS 安装 最新版 Subversion插件subclipse
  9. 你所不知道的Python | 字符串连接的秘密
  10. 是时候实现 SOC 2.0 了