萬盛學電腦網

您现在的位置: 萬盛學電腦網 >> 程式設計 >  >> 資料庫 >> MySQL 教學

MySQL 5.5+ 啟動報錯:unknown variable 'default-character-set=utf8' 解決方案

錯誤現象

MySQL 5.5/5.6/5.7/8.0 啟動失敗,錯誤日誌或事件檢視器顯示:

mysqld: unknown variable 'default-character-set=utf8'

根本原因

MySQL 5.5 起調整了字元集相關參數名稱:

  • 舊參數 default-character-set 僅適用於 客戶端程式(mysql、mysqldump 等)
  • 伺服器端 [mysqld] 區段必須使用 character_set_server

修正 my.cnf / my.ini

[mysqld]
# 錯誤寫法
# default-character-set=utf8

# 正確寫法
character_set_server = utf8
collation_server = utf8_general_ci

# 客戶端區段保持不變
[mysql]
default-character-set = utf8

[client]
default-character-set = utf8

驗證修正

mysql -uroot -p -e "SHOW VARIABLES LIKE 'character_set%';"
# 應顯示 character_set_server = utf8

補充:MySQL 8.0 預設已為 utf8mb4

若需完整 Unicode 支援(含 Emoji),建議直接使用:

[mysqld]
character_set_server = utf8mb4
collation_server = utf8mb4_unicode_ci
copyright © 萬盛學電腦網 all rights reserved