【开发笔记】MySQL 5.6.36 Windows x64位版本的utf8mb4字符集设置

1,概述

    MySQL安装成功后(安装过程参见:http://blog.csdn.net/paulorwys/article/details/72628307),

常见的就是字符集的设置。

    通常,为了规避中文存储/读取的乱码问题以及与其他系统(Android/iOS)统一编码/解码的问题,我们会强制指定数据库连接(url)的字符集为utf-8,形如:

    配置文件(*.properties)中:

 jdbc:mysql://<ip/host>:3306/<db_name>?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&failOverReadOnly=false

    XML文件中:

jdbc:mysql://<ip/host>:3306/<db_name>?useUnicode=true&amp;characterEncoding=UTF-8&amp;autoReconnect=true&amp;failOverReadOnly=false

    既然提到了utf-8,细心的读者可能会联想到安装过程中的另外一个名字:utf-8mb4。

    该字符集从MySQL 5.5版本开始提供,用于存放emoji字符,我们在微信公众号开发以及其他im通信中会遇到。

而对该字符集的支持,不能在jdbc连接字符串中强制指定utf-8mb4了,因为jdbc不予支持。

那就需要在服务端设置方面动脑筋了。

2,配置过程

2.1 目标环境

Windows 7 64位、Windows 10 64位

2.2 配置文件

参考文献:https://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html

需要将安装目录下的my-default.ini改名或复制一份成my.ini文件,并进行相关的配置。

2.3 配置项

(1)【mysqld】段的配置项:

character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
init_connect = 'set names utf8mb4'

参考文献:https://dev.mysql.com/doc/refman/5.7/en/server-options.html

(2)【client】段的配置项(在文件尾部追加)

default-character-set = utf8mb4

参考文献:https://dev.mysql.com/doc/refman/5.7/en/charset-configuration.html

(3)【mysql】段的配置项(在文件尾部追加)

default-character-set = utf8mb4

参考文献:https://dev.mysql.com/doc/refman/5.6/en/charset-connection.html

2.4 启动配置项

在修改配置文件之前,关闭mysql服务;

保存完毕配置文件后,启动mysql服务即可。

2.5 验证配置项

使用mysql工具登录,通过show variables where Variable_name like 'char%'命令来验证设置结果。

3,补充

注意:

(1)服务端设置与jdbc连接的设置是补充关系,不是替换关系。

(2)服务端设置适用于5.5及以上版本。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值