###1、問題背景html
安裝5.6.21版本mysql後,存在編碼問題。mysql
show variables like '%character%';顯示character_set_database和character_set_server值爲latin1;sql
經過set character_set_server='utf8',再次查看確實都變成utf8,可是依然存在編碼錯誤,shell
而且重啓mysqld服務後,查看變量值,恢復到latin1。編碼
###2、解決過程日誌
編輯my.cnf文件。code
<!-- lang: shell --> [mysqld] default-character-set=utf8
重啓mysqld。關閉後沒法重啓,查看錯誤日誌***.local.err文件。server
<!-- lang: shell --> 2015-05-08 00:52:49 58000 [ERROR] /usr/local/mysql/bin/mysqld: unknown variable 'default-character-set=utf8' 2015-05-08 00:52:49 58000 [ERROR] Aborting
確認單詞沒有拼寫錯誤。 ###3、問題解決htm
搜索發現 default-character-set這個屬性在mysql5.0過期,5.5.3移除了。 http://dev.mysql.com/doc/refman/5.5/en/server-options.html#option_mysqld_default-character-setget
修改成
<!-- lang: shell --> [mysqld] character-set-server=utf8
重啓mysqld便可,編碼問題解決了。