MySQL命令行操作时的编码问题详解
1.查看mysql数据库编码
?1 2 | mysql -u用户名 -p密码 show variables like 'char%' ; |
2.编码解释
1.character_set_client:mysql会使用该编码来解读客户端发送来的数据,如果该字段编码为utf8,那么如果客户端发送过来的数据不是utf8,就会出现乱码现象。
2.character_set_results:mysql会把数据转换成该编码后,再发送给客户端,例如该编码为utf8,那么如果客户端不使用utf8来解读,那么就会出现乱码现象。
3.控制台乱码问题
3.1 插入或修改时出现乱码
原因:cmd命令行默认使用gbk编码,而character_set_client却为utf8。
解决:
?1 | set character_set_client = gbk; |
3.2 查询出的数据出现乱码
原因:cmd命令行默认使用gbk编码,而set character_set_results却为utf8。
解决:
?1 | set character_set_results = gbk; |
4.指定默认编码
上述解决办法只对当前连接有效,当退出窗口后,再次登录mysql还需再次设置变量,因此为了一劳永逸我们可以在mysql安装目录下的my.ini中设置:
将其改为 gbk即可:
查看效果:
至此,我们mysql在命令行操作的编码问题便成功解决了~!
总结
到此这篇关于mysql命令行操作时的编码问题详解的文章就介绍到这了,更多相关mysql命令行操作编码内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://blog.csdn.net/qq_39504519/article/details/115637696
1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。