欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

mysql 启动1067错误及修改字符集重启之后复原无效问题

程序员文章站 2022-07-05 13:16:34
下载了官网的解压版mysql-5.6.37-winx64.zip,修改了配置文件,安装服务,直接使用; 出现了中文乱码, 解决办法: 在mysql-5.6.37-win...

下载了官网的解压版mysql-5.6.37-winx64.zip,修改了配置文件,安装服务,直接使用;

出现了中文乱码, 解决办法:

在mysql-5.6.37-winx64目录下,新创建并配置一个my.ini文件(内容可以从网上找,也可以参考my-default.ini手动配置)

注意:

[client] 节点位置千万别放错,比如:

错误方式:

[mysqld]
character-set-server=utf8
# remove leading # and set to the amount of ram for the most important data
# cache in mysql. start at 70% of total ram for dedicated server, else 10%.
# innodb_buffer_pool_size = 128m
[client]
default-character-set=utf8
# remove leading # to turn on a very important data integrity option: logging

ps:下面这些属性,是[mysqld]节点下的,    这样放置[client]节点的话,就变成[client]的属性了 

导致后面报错:mysql: unknown variable 'basedir=d:\mysql-5.6.37-winx64'

 basedir = d:\\mysql-5.6.37-winx64
 datadir = d:\\mysql_data

正确方式 应该是吧[client]节点放到最后面或者最前面 ,别放在[mysqld]节点里面,至于 net start mysql 启动mysql服务 出现 1067错误,查看日志发现

mysql: table 'mysql.plugin' doesn't exist
2017-10-17 11:40:50 2928 [error] can't open the mysql.plugin table. please run mysql_upgrade to create it.
2017-10-17 11:40:50 2928 [error] fatal error: can't open and lock privilege tables: table 'mysql.user' doesn't exist,
最后将datadir = d:\\mysql_data 改为 datadir = d:\\mysql-5.6.37-winx64\\data

服务启动完成(因为之前没有创建my.ini,一直用的是默认配置,所以数据位置路径对应不上,改过来就好了)

总结

以上所述是小编给大家介绍mysql 启动1067错误及修改字符集重启之后复原无效问题,希望对大家有所帮助