程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL 如何修改字符集 utf8 改為 utf8mb4,utf8utf8mb4

MySQL 如何修改字符集 utf8 改為 utf8mb4,utf8utf8mb4

編輯:MySQL綜合教程

MySQL 如何修改字符集 utf8 改為 utf8mb4,utf8utf8mb4


在實行sql server 向 mysql 遷移數據時,報錯:

Incorrect string value: '\xF0\x9F\x98\x8A' 

原因是mysql 采用的是 utf8 的字符集,而該字符集最多占用三個字節,而一些 表情 需要占用 4個字節,所以需要將 utf8 改成 utf8mb4。

原始配置為:

#mysql 5.5 新增參數 
character_set_server=utf8    
collation_server=utf8_bin

我將 character_set_server=utf8 改為:character_set_server=utf8mb4,重啟mysql 卻報錯:

發生系統錯誤 1067 進程意外終止

但是查看錯誤日志,卻沒有顯示是什麼錯誤信息。有倒騰了一會兒,想到是不是 collation_server 也要修改成 utf8mb4_bin,測試的結果果然如此。

所以要注意在將 MySQL字符集 utf8 改為 utf8mb4 時,一定要注意 collation_server 也要同時修改

干脆將 default-character-set=utf8mb4 也改成了算了。

最後的字符配置如下:

[mysql]
default-character-set=utf8mb4
init_connect='set names utf8mb4'

[mysqld]
character_set_server=utf8mb4
collation_server=utf8mb4_bin

修改之後,啟動成功。

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved