近些时间在开始学MySQL,安装挺顺利的,按照网上现成的教程就能安装成功。
可是,在输入html
mysql -uroot -p
再输入密码时,遇到了这个状况mysql
Access denied for user 'root'@'localhost' (using password: YES)
在网上找了不少解决办法,可是基本只有一个,在.ini文件中的mysqld条目添加sql
skip-grant-tables
而后重启服务器,再按照刚刚的步骤再来一遍(最后不输入密码),可是仍是一条语句把我拦了下来安全
Access denied for user 'root'@'localhost' (using password: NO)
综合了网上不少方法,本身一个一个拼接着去试,最后成功了
整体上的思想仍是修改.ini配置文件的内容,不过是经过命令行的形式修改,不知道是否是由于版本迭代了把之前那个直接修改文件的方法屏蔽了,不管如何,经过命令行修改在MySQL 8.0上是能够的。服务器
下面开始吧。this
net stop mysql
mysqld --defaults-file="D:\MySQL\my.ini" --console --skip-grant-tables
net start mysql
mysql -uroot -p
输入密码以后就能登陆成功了。(数字1跟字母l很像很像)spa
show databases;
MySQL给个人反馈是:命令行
You must reset your password using ALTER USER statement before executing this statement.
个人猜想应该是MySQL认为安装时提供的随机密码不安全,让用户重置密码。
网上找了一下,而后找到的现成办法
参考文章:https://dev.mysql.com/doc/ref...code
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码' PASSWORD EXPIRE;
而后从新登陆一下服务器就能正常的操做了。htm