篇首语:本文由编程笔记#自由互联小编为大家整理,主要介绍了mysql my.ini配置文件修改无效,修改mysql默认字符集相关的知识,希望对你有一定的参考价值。
问题 开始于 使用mysql命令插入中文数据插不进去
ERROR1366(HY000):Incorrectstringvalue:\'\\xD6\\xD0\\xCE\\xC4\'forcolumn。
开始查看有关字符集的问题。
如果使用 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
这是创建数据库创建表插入中文 完全没问题。还有很多疑问,等深入了解后再来更新。