你的位置:首页 > 数据库

[数据库]My Sql 1067错误兼编码问题解决


My Sql 大部分都是用绿色版(解压版) 然后注册服务 简单方便。

但是。配置文件头痛的一逼。

首先配置mysql的环境变量。

mySQL 环境变量(我的电脑-右击属性-高级-环境变量)

MYSQL_HOME(解压路径):E:\MYSQL\mysql-5.6.23-winx64

path:在最后面添加 ;%MYSQL_HOME%\bin 注意分号

不加环境变量CMD时会提醒不是内部外部命令。

楼主用的。5.6.23版本。

my-default.ini内容如下

[mysqld]
#skip-grant-tables 这个可以在root密码忘记的情况下登录mysql安全性极低。

#端口
port=3306

#某些版本情况下default-character-set=utf8 能解决中文乱码的问题

#这里不要用default-character-set=utf8 会直接报1067错误

character-set-server=utf8

 

#注意这个一定要加不加client database results 都是GBK或latin1

init_connect='SET NAMES utf8' 

#show variables like 'char%'; 查看数据库编码集

#数据库存储引擎 某些版本 default-storage-engine=MyISAM才会正常启动 不然会报1067 

default-storage-engine=INNODB

#设置basedir指向mysql的安装路径
basedir=E:\MYSQL\mysql-5.6.23-winx64
datadir=E:\MYSQL\mysql-5.6.23-winx64\data


[client]
default-character-set=utf8
#password =1234
port=3306

[mysql]
port=3306
default-character-set=utf8

-------------------------------------------------------------------------------这行不要复制

基本上没有乱码问题了。

进入mysq...bin\ 以管理员身体运行

指定配置文件,添加服务

mysqld  --install MySQL --defaults-file="E:\MYSQL\mysql-5.6.23-winx64\my-default.ini"

启动mysql

net start mysql 

mysql -u root -p 默认为空

 

使用Navicat for MySQL联接数据库。

注册码:NAVH-WK6A-DMVK-DKW3

切换到 use mysql

select * from mysql.user;

会看到类似记录

                                                 

不用密码也能干进了。先干掉localhost第4条记录。(匿名登录)

如果不改表。就会有下图的情况 

                                                  

删了第4条之后。

                                                      

这个时候就需要验证了。提示输入用户名

记得my-default.ini的 skip-grant-tables不要开。

修改root默认密码(切换到根目录)

1.set password for root@localhost = password('111');

2.update user set password=password("111") where user="root";

亲测可用。重启服务

此时登录时。就要密码了

                                                         

输入刚刚的111密码就行了。

注意:

如果用cmd 登录请用如下格式登录

mysql -u root -p111 

切记勿用:

mysql -u root -p 111

不然会提示:

                              

先到这里了。编码问题 安装服务,密码问题都解决了。

希望能帮到有需要的朋友。编码问题如果不解决确实很头痛。chinese 

 1067 图。                          

The End...