latin1)MySQL 啟動讀取預設配置檔,搜尋路徑:
C:\Windows\my.ini 或 C:\WINNT\my.iniC:\my.cnf注意:不同位置副檔名不同(.ini vs .cnf)。
[mysqld]
default-character-set=latin1 # 建議 latin1,utf8 可能導致舊軟體不兼容
[client]
default-character-set=utf8
init_connect='SET NAMES utf8'
關鍵點: [mysqld] 建議設 latin1 兼容舊應用;[client] 設 utf8 但僅官方工具(mysql.exe、mysqladmin.exe、MySQL Control Center 等)會讀取此設定。
大多數工程師自寫 PHP/JSP 連線,不會讀取 client 區段配置。必須在建立連線後立即執行:
若使用連線池,每次取新連線後必須立即執行 SET NAMES 'utf8'。
輸入「不道可否囉」(含生僻字),正確寫入讀出無「口」字替換即通過。已驗證中文繁/簡/日文/韓文、Flex2-AMFPHP-PHP-MySQL 全鏈路無亂碼。