My Sql 1067错误兼编码问题解决
但是。配置文件头痛的一逼。
首先配置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
如果在此之前配置过相关属性。请将mysql-data-下面的所以非文件夹的文件全删除。启动即可
The End...