近些时间在开始学MySQL,安装挺顺利的,按照网上现成的教程就能安装成功。
公司主营业务:做网站、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出色尼免费做网站回馈大家。
但是,在我开开心心地输入
mysql -uroot -p
再输入密码时,遇到了这个情况
Access denied for user 'root'@'localhost' (using password: YES)
在网上找了很多解决办法,但是基本只有一个,在.ini文件中的mysqld条目添加
skip-grant-tables
然后重启服务器,再按照刚刚的步骤再来一遍(最后不输入密码),但是还是一条语句把我拦了下来
Access denied for user 'root'@'localhost' (using password: NO)
综合了网上很多方法,自己一个一个拼接着去试,最后成功了。
总体上的思想还是修改.ini配置文件的内容,不过是通过命令行的形式修改,不知道是不是因为版本迭代了把以前那个直接修改文件的方法屏蔽了,无论如何,通过命令行修改在MySQL 8.0上是可以的。
下面开始吧。
1.以管理员身份打开cmd,切换到MySQL的bin目录
2.关闭MySQL服务器
net stop mysql
3.跳过输入密码的步骤
mysqld --defaults-file="D:\MySQL\my.ini" --console --skip-grant-tables
(注意:文件名字与路径要与自己的吻合)
如果出现类似截图圈起来的语句则说明成功
4.重启服务器
net start mysql
5.登录MySQL服务器
mysql -uroot -p
输入密码之后就能登录成功了。
(数字1跟字母l很像很像)
到这一步差不多就能完成了,但是当我输入
show databases;
MySQL给我的反馈是:
You must reset your password using ALTER USER statement before executing this statement.
我的猜测应该是MySQL认为安装时提供的随机密码不安全,让用户重置密码。
网上找了一下,然后找到的现成办法,参考文章
密码永不过期的
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE NEVER;
密码有限期的
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE;
然后重新登录一下服务器就能正常的操作了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持创新互联。
本文题目:win10下MySQL8.0登录Accessdeniedforuser‘root’@‘localhost’(usingpassword:YES)问题的解决方法
文章源于:http://scgulin.cn/article/ppodsp.html