接上一篇文章,在解決了mysql+flask環境配置問題之后,往數據庫存中文字符串會報1366錯誤,提示不正確的字符。繼而發現默認的mysql采用了Latin1字符集,這種編碼是不支持中文的。
如果想支持中文的話,需要設置一下mysql字符集。
使用utf-8編碼是合適的,它支持了我們見過的絕大多數語言。思路如下:
一、關閉mysql服務
二、sudo gedit /etc/mysql/
my.cnf 使用管理員權限編輯配置文件,在其中添加以下內容並保存(更新:生產服務器上也許沒有gedit工具,使用vi更合適,它的操作需要查閱資料)
[mysqld]
character_set_server = utf8
[client]
default-character-set = utf8
[mysql]
default-character-set = utf8
三、重啟mysql服務
四、此時的數據庫已經默認使用utf-8字符集,但你之前創建的數據庫還是Latin1字符集,快速的辦法是刪除之前的數據庫,重新創建一個新的,此時數據庫會默認使用utf-8字符集。
五、測試一下,中文也可以存進數據庫了!
參考文章:http://ju.outofmemory.cn/entry/169992