mysql my.ini配置文件修改无效,修改mysql默认字符集

时间:2021-06-06 04:30:59

问题 开始于 使用mysql命令插入中文数据插不进去

ERROR 1366 (HY000): Incorrect string value: '\xD6\xD0\xCE\xC4' for column。

开始查看有关字符集的问题。

如果使用 set names 'gbk';

或者  set character_set_database 'utf8';   这样的命令来设置字符集的话,只是当前设置生效,下次重启mysql的时候就失效了还要重新设置,麻烦,或者根本不好使

这时想到了修改默认的配置文件。于是乎开始了修改配置文件 my.ini到的道路。

 

查看我的电脑服务里是否有两个服务一个是mysql  另一个mysql57(我这里安装的版本是mysql5.7.17)网络服务   

如果使用 net start mysql  来启动数据库  那么开启的服务就应该是 mysql   

如果使用 net start mysql57 来启动数据库  那么开启的服务就应该是mysql57

----------------------------------------------------------------------------------------------------------------------------------------------------------------

至于两个什么关系我还在研究中,弄明白了再更新。。。。。。。

----------------------------------------------------------------------------------------------------------------------------------------------------------------

查看发现在服务里,默认加载的是这个路径下的my.ini:

"C:/Program Files/MySQL/MySQL Server 5.6/bin\mysqld" --defaults-file="C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.7\my.ini" MySQL57

而原安装路径下是my-default.ini   以至于我把两个弄混了,刚开始一顿在my-default.ini中改。。。。所以都无效。

所以把C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.7\my.ini" MySQL57  这个路径下的my.ini 复制到C:\Program Files\MySQL\MySQL Server 5.7

这个路径即可。

同时在my.ini  中添加如下内容

 

在[client]下添加

default-character-set=utf8

 

在[mysqld]下添加

character-set-server=utf8

这里注意不要打错了。直接复制过去即可。

 

返回到命令行

>net start mysql

>mysql -uroot -p

Enter password: ******

> show variables like 'character_set%';

到此会发现除了filesystem 其他 已成功改为utf8 

mysql my.ini配置文件修改无效,修改mysql默认字符集

这是创建数据库创建表插入中文 完全没问题。还有很多疑问,等深入了解后再来更新。