Mysql編碼問題

操作系統:Ubuntu 14.04

Mysql版本:5.5.46

由于需要在Mysql中插入中文,因此就需要將Mysql默認的編碼改成utf-8,在百度搜索了一圈沒有成功,最后再Stackoverflow找到了答案。Mysql默認的編碼如下圖所示:(用到的命令:show variables like 'character%')

Paste_Image.png

我們需要將character_set_databasecharacter_set_server這兩個變量的值該成utf8
方案:
1、關閉mysql,service mysql stop
2、編輯mysql配置文件my.cnf
在[client]下面添加
default-character-set=utf8
在[mysql]下面添加
default-character-set=utf8
在[mysqld]下添加
character-set-server=utf8
init_connect='SET NAMES utf8',
collation-server=utf8_general_ci
注意:這里不能加default-character-set=utf8不然會導致mysql無法啟動
3、觀測修改后的變量

Paste_Image.png

萬萬沒想到在用Python執行一次中文插入后character_set_database的值又變成latin1。中文顯示仍然是亂碼,在Stackoverflow上看見有人問這個問題直接貼過來了

Paste_Image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容