1. 程式人生 > 其它 >CentOS7下mysql5.6修改預設編碼

CentOS7下mysql5.6修改預設編碼

參考原文教程:Centos7下修改mysql5.6編碼方式 解決網站中文顯示問號

解決辦法:

修改MySQL資料庫字元編碼為UTF-8,UTF-8包含全世界所有國家需要用到的字元,是國際編碼。

具體操作:

1、進入MySQL控制檯

mysql  -u root -p

輸入密碼

檢視當前mysql執行狀態

mysql>status

其中serverdb原不是utf-8;預設編碼是latin1

2.修改mysql配置檔案

預設位置:/etc/my.cnf

vim /etc/my.cnf

圖片是我新增設定後的。

  • 我的mysql沒有[client]這個欄位,首先新增上,在[client]段增加下面程式碼default-character-set=utf8(網上還有提到其他的設定語句,是以前的版本,現在不用了)
  • 在[mysqld]段增加下面的程式碼

character-set-server=utf8

collation-server=utf8_general_ci

:wq! #儲存退出

systemctl restart mysql.service #重啟MySQL
  • 檢視當前mysql執行狀態

mysql>status

此時所有編碼應該都是UTF-8

引數說明:

haracter_set_client:客戶端請求資料的字符集。

character_set_connection:從客戶端接收到資料,然後傳輸的字符集。

character_set_database:預設資料庫的字符集,無論預設資料庫如何改變,都是這個字符集;如果沒有預設資料庫,使character_set_server指定的字符集,此引數無需設定。

character_set_filesystem:把作業系統上檔名轉化成此字符集,即把character_set_client轉換character_set_filesystem,預設binary即可。

character_set_results:結果集的字符集。

character_set_server:資料庫伺服器的預設字符集。

character_set_system:這個值總是utf8,不需要設定,儲存系統元資料的字符集。