1.查看MySQL數(shù)據(jù)庫(kù)編碼
mysql -u用戶名 -p密碼
show variables like 'char%';
![](/d/20211017/a55679e116dfecb8269c64bf434596cf.gif)
2.編碼解釋
1.character_set_client:MySQL會(huì)使用該編碼來(lái)解讀客戶端發(fā)送來(lái)的數(shù)據(jù),如果該字段編碼為utf8,那么如果客戶端發(fā)送過(guò)來(lái)的數(shù)據(jù)不是utf8,就會(huì)出現(xiàn)亂碼現(xiàn)象。
2.character_set_results:MySQL會(huì)把數(shù)據(jù)轉(zhuǎn)換成該編碼后,再發(fā)送給客戶端,例如該編碼為utf8,那么如果客戶端不使用utf8來(lái)解讀,那么就會(huì)出現(xiàn)亂碼現(xiàn)象。
3.控制臺(tái)亂碼問(wèn)題
3.1 插入或修改時(shí)出現(xiàn)亂碼
![](/d/20211017/f1f6977a6f03ab987e65ce22eff0ac28.gif)
原因:cmd命令行默認(rèn)使用gbk編碼,而character_set_client卻為utf8。
解決:
set character_set_client = gbk;
3.2 查詢出的數(shù)據(jù)出現(xiàn)亂碼
![](/d/20211017/607243f4c801dc703e4ff2cef7405e0c.gif)
原因:cmd命令行默認(rèn)使用gbk編碼,而set character_set_results卻為utf8。
解決:
set character_set_results = gbk;
4.指定默認(rèn)編碼
上述解決辦法只對(duì)當(dāng)前連接有效,當(dāng)退出窗口后,再次登錄MySQL還需再次設(shè)置變量,因此為了一勞永逸我們可以在MySQL安裝目錄下的my.ini中設(shè)置:
![](/d/20211017/3a2d18aa57946f7c4085115d14df4b6c.gif)
![](/d/20211017/fe1153380cb10c27c3c7c12a57adf066.gif)
將其改為 gbk即可:
![](/d/20211017/ea132e14bc64243cd39306870f25175e.gif)
查看效果:
![](/d/20211017/26869cab7085a4fa6192eef043504f6e.gif)
![](/d/20211017/17be1d797ea170931e65f11c8403c73c.gif)
至此,我們MySQL在命令行操作的編碼問(wèn)題便成功解決了~!
總結(jié)
到此這篇關(guān)于MySQL命令行操作時(shí)的編碼問(wèn)題詳解的文章就介紹到這了,更多相關(guān)MySQL命令行操作編碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- MySQL命令無(wú)法輸入中文問(wèn)題的解決方式
- MySQL source命令的使用簡(jiǎn)介
- mysql常用sql與命令之從入門到刪庫(kù)跑路
- mysql利用mysqlbinlog命令恢復(fù)誤刪除數(shù)據(jù)的實(shí)現(xiàn)
- MySQL存儲(chǔ)過(guò)程的查詢命令介紹
- MySQL數(shù)據(jù)庫(kù)自動(dòng)補(bǔ)全命令的三種方法
- mysql密碼中有特殊字符&在命令行下登錄的操作
- Mysql桌面工具之SQLyog資源及激活使用方法告別黑白命令行
- mysql的登陸和退出命令格式
- MySQL如何使用授權(quán)命令grant
- MySQL 基礎(chǔ)常用命令總結(jié)