1. 程式人生 > >mysql資料庫插入中文以及亂碼問題解決(統一設定為utf-8)格式

mysql資料庫插入中文以及亂碼問題解決(統一設定為utf-8)格式

1、編輯MySql的配置檔案

MySql的配置檔案Windows下一般在系統目錄下或者在MySql的安裝目錄下名字叫my.ini。像我的就在D:\Program Files (x86)\MySQL\MySQL Server 5.5下。可以搜尋,Linux下一般是/etc/my.cnf

直接全文搜尋"character-set",把編碼都改成utf8。

2、重啟Mysql資料庫

在執行中輸入services.msc,開啟服務


找到MYSQL,右鍵重啟

3、命令列開啟mysql

WINDOWS下的

mysql> show variables like '%character_set%';
+--------------------------+---------------------------------------------------------------+
| Variable_name            | Value                                                         |
+--------------------------+---------------------------------------------------------------+
| character_set_client     | utf8                                                          |
| character_set_connection | utf8                                                          |
| character_set_database   | utf8                                                          |
| character_set_filesystem | binary                                                        |
| character_set_results    | utf8                                                          |
| character_set_server     | utf8                                                          |
| character_set_system     | utf8                                                          |
| character_sets_dir       | D:\Program Files (x86)\MySQL\MySQL Server 5.5\share\charsets\ |
+--------------------------+---------------------------------------------------------------+
8 rows in set (0.00 sec)

Linux下的

mysql> show variables like '%character_set%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       |
| character_set_connection | utf8                       |


| character_set_database   | utf8                       |
| character_set_filesystem | binary                     |
| character_set_results    | utf8                       |
| character_set_server     | utf8                       |
| character_set_system     | utf8                       |
| character_sets_dir       | /usr/share/mysql/charsets/ |

+--------------------------+----------------------------+
需要達到上面的效果,如果沒有達到,有兩種可能。1)你之前建過資料庫和表,所以你需要把建的刪掉重新再建一次。英文文件的大概意思就是如果更改資料庫的預設字符集或排序規則,必須刪除使用資料庫預設值的儲存例程重新建立,以便他們使用新的預設值。2)你上面的配置沒有配置好。你可以參考一下設定MYSQL資料庫編碼為UTF-8這篇文章。

4、檢視效果

插入漢字後,在cmd上檢視效果。如果還是亂碼,在確定你上面的步驟都完成的情況下,那就是你的cmd編碼格式不是utf8。cmd預設格式是gbk。然後知道問題出在哪裡就能解決了。命令視窗修改編碼,CMD編碼修改方法(百度經驗)。我按照上面的方式改了還是不能正常顯示(但是上面的cmd編碼修改方法肯定是正確的),最後是使用navicate for mysql能夠正常顯示。