標籤:
mysql的預設編碼是latin1,對漢字的支援不好,需要編輯設定檔,設定mysql的預設編碼。
這個過程網上的教程很多,大家可以參考
mysql 修改編碼格式
MySQL修改編碼設定及亂碼問題
linux下的mysql配置修改
途中碰到了好幾個坑,真是噁心的不行。
坑1,找不到my.cnf檔案
教程裡說linux下mysql設定檔的路徑在/etc/my.cnf,然而找不到。
百度了一下,說是有可能出現這種情況。囧,有經驗的話還可以自己寫一個。然而我沒經驗。
控制台下輸入“find / -name my*.cnf”,出現了幾個。應該是mysql提供的樣本。
隨便選了一個my-small.cnf,按照教程裡的說法加了幾行設定編碼的語句,放到/etc/my.cnf下
控制台輸入“service mysql restart”,重啟mysql
坑2,伺服器重啟失敗
輸入重啟命令後報錯,
把my.cnf檔案去掉就可以正常重啟了,可能是my.cnf文法問題。
查看mysql的日誌,控制台輸入“vim /usr/local/mysql/data/iZ28bvt8qj9Z.err”
根據操作的時間鎖定日誌內容,看到一行資訊:
上網搜了下,MYSQL5.5修改字元集報錯:unknown variable ‘default-character-set=utf8’
把設定檔中有一行[mysqld] 下的“default-character-set = utf8”注釋掉,用“character_set_server = utf8”取代。
重啟,問題解決
最終my.cnf內容如下,本來mysql提供的還有很多內容,被我在dubug的過程中一口氣刪掉了。如果有碰到同樣問題的朋友拿來用就很方便了。
[mysql]default-character-set = utf8[mysqld]#default-character-set = utf8character_set_server = utf8[mysql.server]default-character-set = utf8[mysqld_safe]default-character-set = utf8[client]default-character-set = utf8
[error handle]Linux下配置mysql的編碼