java服務端和mysql對utf8mb4的支持

一.建議jdbc驅動版本在5.1.38以上

1.保持該版本以上的緣由是可讓jdbcurl中的useUnicode=true&characterEncoding=utf8屬性繼續生效

完整的鏈接相似於:jdbc:mysql://xxxx:xxxx/xxxx?useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false&useOldAliasMetadataBehavior=true&zeroDateTimeBehavior=convertToNull&allowMultiQueries=truejava

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.38</version>
</dependency>
複製代碼

二.確認mysql版本5.6以上

SELECT version();
複製代碼

1.查看當前字符集

SHOW VARIABLES WHERE Variable_name LIKE 'character_set_%' OR Variable_name LIKE 'collation%';
複製代碼

2.修改字符集

ALTER DATABASE db_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;mysql

3.修改mysql配置文件my.cnf

my.cnf通常在etc/mysql/my.cnf位置。找到後請在如下三部分裏添加以下內容:sql

[client] default-character-set = utf8mb4curl

[mysql] default-character-set = utf8mb4url

[mysqld] character-set-client-handshake = FALSE character-set-server = utf8mb4 collation-server = utf8mb4_unicode_cispa

4.重啓mysql...

相關文章
相關標籤/搜索