Windows下安装MySQL 空密码登录失败问题的解决办法

网上林林总总查询了多次相关资料,总是有报错,经过不断尝试终于找到一个解决办法,分享给大家

我安装的版本是5.7.35

首先是新建my.ini文件

[mysql]

# 设置mysql客户端默认字符集

default-character-set=utf8

[mysqld]

skip-name-resolve
skip-grant-tables

#设置3306端口

port = 3306

# 设置mysql的安装目录

basedir=D:\develop\mysql-5.7.35-winx64

# 设置mysql数据库的数据的存放目录

datadir=D:\develop\mysql-5.7.35-winx64\data

# 允许最大连接数

max_connections=200

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

# 服务端使用的字符集默认为8比特编码的latin1字符集

character-set-server=utf8

# 创建新表时将使用的默认存储引擎

default-storage-engine=INNODB

文件中的目录使用自己的目录,注意保存编码类型为ANSI

不需要自己建立data文件夹

进入bin文件夹,打开cmd命令提示符窗口(管理员身份运行)

运行命令

mysqld --initialize-insecure --user=mysql --explicit_defaults_for_timestamp

运行命令

mysqld install

运行命令

net start mysql

 至此mysql已经安装成功了

如果此时按照网络上其他教程直接输入mysql -u root -p

再按两次回车是进不去的,会有如下报错

 这时候我们打开mysql安装目录下的data,查看.err结尾的文件

会发现我们已经是使用了空密码创建,但是还是登录不进去

解决办法如下:

打开服务,将mysql服务先停止

再打开一个新的cmd窗口

运行命令

mysqld --skip-grant-tables

 这时该窗口会一直在等待状态,先不要关闭,再打开一个新的cmd窗口

运行命令

mysql -u root -p

然后按两下回车,此时惊奇的发现,竟然进去了

 接下来就可以修改密码了

等一下,还没完

直接修改很可能报错

先刷新一下权限表

运行命令

 flush privileges;

然后再重设密码

运行命令  密码填自己的就行

set password for root@localhost = password('123qwe...');

至此已经大功告成了

关闭两个cmd窗口,打开一个新窗口

启动mysql

运行命令

net start mysql

 然后用刚才设置的新密码登录就OK了

 问题解决,撒花~~~

学习时的痛苦是暂时的 未学到的痛苦是终生的
本文版权归作者和博客园共有,欢迎转载,但必须给出原文链接,并保留此段声明,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/juanxincai/p/15672429.html