1. 程式人生 > 資料庫 >Linux centos7 mysql 配置支援emoji表情包,筆記

Linux centos7 mysql 配置支援emoji表情包,筆記

1.確認你的資料庫使用的是utf8mb4 字符集 

使用Navicat管理工具 檢視 修改

2確認資料配置檔案使用utf8mb4字符集

註釋掉的utf8 是之前配置時使用的,此時在插入帶有emoji表情的資料時會報如下錯誤

下面是我的配置檔案 可以直接貼上

[mysql]
# 設定mysql預設字符集
# default-character-set=utf8 
# 設定mysq預設使用字符集 utf8mb4 支援emoji 表情包
default-character-set=utf8mb4
[client]
# 設定mysql客戶端默使用認字符集 支援emoji 
default-character-set=utf8mb4

[mysqld]
skip-name-resolve
#設定3306埠
port = 3306
# 設定mysql的安裝目錄
basedir=/usr/local/mysql
# 設定mysql資料庫的資料的存放目錄
datadir=/usr/local/mysql/data
# 允許最大連線數
max_connections=200
# 服務端使用的字符集預設為8位元編碼的latin1字符集
# character-set-server=utf8
# ##############以下內容配置 是為了使資料庫支援 emoji 表情########
character-set-client-handshake=FALSE
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
init_connect='SET NAMES utf8mb4'
# ##################支援配置結束#########
# 建立新表時將使用的預設儲存引擎
default-storage-engine=INNODB
lower_case_table_names=1
max_allowed_packet=16M

儲存後,重啟mysql就行,現在你的資料庫儲存 表情就不會報錯了,

但是要注意在連線資料庫時 不能使用  characterEncoding\=utf8  否則,同樣會報錯 順帶貼下我的連線語句 springboot下 properties 配置檔案中的連線語句 

################  &allowMultiQueries=true 如果sql語句 存在批量更新時加上這個語句 可以返回成功數量 ######################
spring.datasource.url=jdbc\:mysql\://*.*.*.*\:3306/home_dynamic?useUnicode\=true&allowMultiQueries=true&useAffectedRows=true