在使用mysql5.7時,會發現通過web端向數據庫中寫入中文后會出現亂碼,但是在數據庫中直接操作SQL語句插入數據后中文就顯示正常,這個問題怎么解決呢?此處不對MySQL的數據編碼過程和原理進行講解,如果有興趣的同學可以自己百度。
下面我們就直接使用如下操作解決:
一、打開mysql控制臺,輸入命令show variables like 'character%';
顯示如下:
+--------------------------+-------------------------------------------+
| Variable_name | Value |
+--------------------------+-------------------------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | utf8 |
| character_set_results | latin1 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | C:\MySQL\MySQL Server 5.0\share\charsets\ |
+--------------------------+-------------------------------------------+
二、修改my.ini文件
[client]
default-character-set=utf8
[mysqld]
default-storage-engine=INNODB
character-set-server=utf8
collation-server=utf8_general_ci
三、重啟后使用第一步的命令查看,如下:
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
還有character_set_database和character_set_server的默認字符集還是latin1。
四、輸入命令:set names utf8;
重啟后,使用第一步命令查看:
+--------------------------+------------------------------------------------+
| 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 | C:\wamp64\bin\mysql\mysql5.7.9\share\charsets\ |
+--------------------------+------------------------------------------------+
除了character_set_filesystem是binary外,其他都是utf8了,
這樣在web端也設置成utf8編碼就可以正常輸入數據庫了。
以上所述是小編給大家介紹的解決Mysql5.7中文亂碼的問題,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
您可能感興趣的文章:- mysql中插入表數據中文亂碼問題的解決方法
- 解決Linux下Tomcat向MySQL插入數據中文亂碼問題
- JDBC連接mysql處理中文時亂碼解決辦法詳解
- 詳解mysql數據庫中文亂碼問題
- 在CMD中操作mysql數據庫出現中文亂碼解決方案
- 關于servlet向mysql添加數據時中文亂碼問題的解決
- Ubuntu下MySQL中文亂碼的問題解決
- JSP MySQL插入數據時出現中文亂碼問題的解決方法
- Mac Mysql數據庫中文亂碼問題解決
- 解壓版MYSQL中文亂碼問題解決方案