cmd下执行mysql包含中文的语句乱码

  • 首先下图中的中文乱码:
    这里写图片描述

  • 百度说是字符集的问题,将字符集改为utf8, 增加配置字符的语句到my.ini配置文件中,但我选择的是免安装版本的mysql,解压缩后如下图所示,并没有my.ini文件.
    这里写图片描述

  • 打开my-small.ini文件后发现其中这么一段话
    MySQL programs look for option files in a set of locations which depend on the deployment platform.
    You can copy this option file to one of those locations. For information about these locations, see:
    http://dev.mysql.com/doc/mysql/en/option-files.html
    才知道当mysql服务器启动时,会自动到读取文件在下表中(你可以把my.ini等配置文件放在表中包含的路径下)
    这里写图片描述

  • 所以我将my-small.ini重命名为my.ini,删除其他my-huge.ini等文件,并加入设置字符语句

    [mysqld]

    character-set-server = utf8
    collation-server = utf8_general_ci

    [mysql]

    default-character-set = utf8

  • 这时我以为万事大吉了,但查询仍然中文乱码, 输入下面代码

mysql> set names 'gbk';
  • 后正常显示中文,这里设置字符为当前用户操作有效。

猜你喜欢

转载自blog.csdn.net/qq_36336003/article/details/79966400