版本:MySql5.7
問題描述
如上圖所示,將數(shù)據(jù)存儲到mysql數(shù)據(jù)庫時產(chǎn)生中文亂碼(數(shù)據(jù)傳輸?shù)胶笈_時是正常的)。
產(chǎn)生問題的原因
確認數(shù)據(jù)庫的編碼格式,可以通過以下語句查詢:
SHOW VARIABLES LIKE 'character%';
發(fā)現(xiàn)編碼是character_set_server = latin1
解決方法
將character_set_server編碼改為utf8mb4
windows環(huán)境
1.找到mysql安裝目錄的my.ini文件,并打開該文件
2.在文件中搜索character-set-server
3.將其改為character-set-server=utf8mb4
4.重啟mysql服務(wù)
5.修改后查詢
linux環(huán)境
1.前往mysql安裝目錄文件夾/usr/local/soft/mysql/mysql-5.7
2.mysql-5.7->support-files->找到文件my-default.cnf
3.拷貝一份放到桌面,然后用文件編碼,打開文件,找到[mysqld]在下面加入一行character_set_server=UTF8MB4
4.將桌面上的my-default.cnf文件重命名為my.cnf,并上傳到/etc/文件夾下
5.重啟mysql(stop mysql關(guān)掉服務(wù),start mysql開啟服務(wù))
6.修改后查詢
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點和立場。
轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。