我在學習django中admin模塊的時候,登陸進入後臺操做頁面,輸入中文數據,但保存以後全是亂碼(全是「????????????」),而後就開始瞭解決問題之路。mysql
一、首先百度搜索,最主流的方法也是一勞永逸的方法是:修改MySQL的配置文件my.ini。我也是按照這個方法作的,只是搜索出來的方法不詳細,或者說不適合MySQL的新版本。sql
二、在MySQL根目錄下尋找my.ini配置文件,然而我裝的是MySQL-5.6.30,在根目錄下只找到了my-default.ini文件。把my-default.ini重命名爲my.ini,並按照以下格式在文件中的[mysql]和[client]中添加以下語句:數據庫
[mysqld] character_set_server = utf8 character_set_client = utf8 [client] default-character-set = utf8
三、以後在path環境變量中添加MySQL的根路徑和根路徑下的bin路徑。(若是以前已設置,而且MySQL的路徑沒有改變,這一步能夠忽略)django
四、以管理員權限運行cmd命令行,執行以下步驟,安裝或者從新安裝mysql(注意紅色mysqld和黑色mysql的區別):學習
4.一、若是以前安裝了MySQL,須要卸載MySQL,在命令行中執行:mysqld --remove編碼
4.二、執行:mysqld --install命令行
4.三、執行:net start mysqlserver
4.四、登陸mysql:mysql -u root -p rem
4.五、在mysql的命令行操做中,輸入:show variables like 'charac%';cmd
顯示以下圖所示的結果,mysql數據庫中就能夠正常存儲中文數據了。
注意:一、在第2步中,不能把下面這個設置選項
default-character-set = utf8
放在
[mysqld]
模塊中。若是是這樣,在安裝或者從新安裝mysql的過程當中,能夠正確執行4.1和4.2,但執行4.3的時候會報以下圖的錯誤:
二、個人mysql數據庫在修改編碼配置以前顯示的默認配置結果爲(固然不一樣的版本默認配置可能不同):