解壓版無 my.ini,僅有 my-default.ini 模板,且裡面無字符集配置項。直接修改模板無效。
將 my-default.ini 複製為 my.ini,MySQL 啟動時優先讀取 my.ini。
在 [mysqld] 區塊添加:
character_set_server=utf8
注意: 必須寫
utf8而非utf-8,後無標點。
在 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES 後追加客戶端配置:
[client] port=3306 default-character-set=utf8
# For advice on how to change settings please see # https://dev.mysql.com/doc/refman/5.6/en/server-configuration-defaults.html [mysqld] basedir = D:\mysql-5.6.24-winx64 datadir = D:\mysql-5.6.24-winx64\data port = 3306 character_set_server=utf8 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES [client] port=3306 default-character-set=utf8
重啟服務,登錄執行:
SHOW VARIABLES LIKE 'char%';
輸出應顯示 character_set_server、character_set_client、character_set_connection、character_set_results 均為 utf8。
解壓版配置關鍵在於:
my.ini必須放在安裝根目錄或basedir指定目錄,且[mysqld]與[client]區塊雙雙設置 utf8,徹底解決中文亂碼。