牛骨文教育服务平台(让学习变的简单)
博文笔记

mysql 5.7插入中文乱码,mysql 5.7 修改my.ini文件无效解决方法

创建时间:2016-09-23 投稿人: 浏览次数:3092

项目编码是utf-8,数据库也是utf-8但插入数据中文乱码。

1.首先使用show variables like "character%";查看数据库输有编码正常情况下应该出character_set_filesystem外都是utf8修改my.ini(或者my-default.ini)

[client]
default-character-set=utf8


在[mysqld]中添加 character-set-server=utf8

2.使用show variables like "character%";,所有编码除character_set_filesystem都是utf8,问题解决。


二、对于上面若修改my.ini无效则使用下面方式。

*******放心以下方式不会损坏mysql以前的数据******

*******实在不放心也可以备份*******

1.一管理员权限运行cmd,关闭数据库服务

  执行sc delete mysql(你的mysql注册服务名),打出[SC] DeleteService 成功 操作成功。

2.执行mysqld install MYSQL --defaults-file="E:mysql5.7my.ini"

3.重启服务,net start mysql。配置生效。


ps.mysql5.7 user表的password改为authentication_string

补充mysql5.7 解压版配置过程:(windows环境)

1. 修改配置文件添加,除上面提到的编码设置就是数据目录配置如:

basedir = E:mysql5.7
datadir = E:mysql5.7data

2. 进入sql下的bin目录初始化mysql,mysqld --initialize --user=mysql --console。一定要记录下控制台输出信息在最后冒号后面的字符,那是mysql的初始密码。

3. 安装服务,mysqld install MYSQL --defaults-file="E:mysql5.7my.ini"

4.启动mysql 服务。net start mysql。

5. 登录mysql,mysql -u root -p 输入第二步记录的密码。

6. 修改登录密码,初始密码是必须修改的不然不能正常使用数据库。set password = password("新密码");刷新权限flush privileges

7.重新登录。


声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。