首先说一个坑,你得先去看MySQL服务启动的my.ini路径在哪
去我的服务里找到MySQL的服务,右键属性,我的是这样的:
“C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe” --defaults-file=“C:\ProgramData\MySQL\MySQL Server 5.6\my.ini” MySQL56
可以看出启动程序和my.ini位置不一样,所以要去上面设置启动的my.ini配置文件。尽管启动程序里面也有一个my_default.ini文件,我看过很多文章说把my_default.ini文件复制一份改名为my.ini,然后在那些节点下添加对应信息,如下
[client]
default-character-set=utf8
[mysqld]
character_set_server=utf8
实际上并不是这样,要看你MySQL服务里面的启动设置,我之前是5.5版本,之前是没有 --defaults-file=“C:\ProgramData\MySQL\MySQL Server 5.6\my.ini”,只有“C:\Program Files\MySQL\MySQL Server 5.6\bin\mysqld.exe”这个,所以启动程序跟那个my.ini是放在一起,所以才可以把my_default.ini文件复制一份改名为my.ini,然后在那些节点下添加对应信息(上面2个)
所以找到MySQL服务启动设置的my.ini路径,这个–defaults-file=“C:\ProgramData\MySQL\MySQL Server 5.6\my.ini”
修改my.ini信息如下
default-character-set=utf8
character_set_server=utf8
然后重启服务,大功告成!
使用下面语句查询是否设置成功
show variables like 'character_set_%';
成功界面