mysql在windows命令行下utf8乱码解决
如果要把数据库编码设置为utf8,首先需要把mysql安装路径下的my.ini文件里面的
default-character-set属性设置为utf8,即
default-character-set=utf8
然后输入命令
show variables like ‘char%’;
命令查看下所有的字符集是不是已经变为utf8,如果是恭喜你已经设置成功。
设置为utf8之后如果用管理工具操作mysql会发现中文字段值没问题,但如果用命令行查询就会出现乱码,插入中文字段值的时候,还提示 Incorrect string value: ‘\xD6\xD0\xCE\xC4’ for column 的错误,这可能跟windows命令行的 默认页编码为gbk有关
解决办法,在进行查询或者更新操作的时候先输入命令
set names gbk;
这个命令可以把有三个配置的编码设置为gbk
这样就可以正常进行中文操作了
操作完的时候可以输入
set names utf8;
编码就重新设置回来了
yantaisolo

作者 yantaisolo

在 “mysql在windows命令行下utf8乱码解决” 有 1 条评论
  1. 苦恼于Windows终端显示UTF-8字符乱码
    今搜索结发现解决案非简单:
    1. 修改终端代码页
    终端输入:
    chcp 65001

    2. 右键点击任务栏终端(单击窗口左角图标)快捷菜单选择属性面选择字体—— Lucida Console要选择点阵字体;
    确定再测试UTF-8输看 🙂
    要切换原模式简单:
    chcp 936

    再字体改原点阵字体

    此种方法索罗试验过了,可以解决windows命令行下utf8乱码问题,但是在mysql命令行下却是不起作用的。要想解决mysql命令行下utf8乱码,还是在进行查询或者更新操作的时候先输入命令 set names gbk; 才行!

评论已关闭。