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了
问题解决,撒花~~~
学习时的痛苦是暂时的 未学到的痛苦是终生的
作者:卷心菜的奇妙历险
本文版权归作者和博客园共有,遵循 CC 4.0 BY-SA 版权协议,欢迎转载 转载请附上原文出处链接和本声明,否则保留追究法律责任的权利。