MySQL8.0.21 root 密码登陆不入-ERROR 1045(28000) Access denied for user ‘root’@‘localhost’ (using password YES)
如果你的目标机器是第一次安装mysql8.0.21出现该问题的话,可以用下面的方法解决,修改root的登录密码。
如果你忘记了mysql的登录密码也可以用这个方法解决问题。
第一步
(1)打开Windows的DOS窗口,管理员模式运行。切换至MySQL的安装目录下的bin目录。按一下回车
(2)停止mysql服务。 需要在第一步的基础上 在命令板中输入 net stop mysql 等服务停止后进行下一步。
(3)输入mysqld --console --skip-grant-tables --shared-memory 回车。–skip-grant-tables 的意思是启动MySQL服务的时候跳过权限表认证,,直接复制命令就可以。此时DOS窗口无法输入,需要再新开一个DOS窗口。这个窗口先不要关闭,等待其他ok之后,在关闭,关闭这个窗口就等于关闭了mysql服务。
(4)再次创建一个cmd的窗口,然后将目标切换到mysql的安装目录bin文件夹下,然后回车。
(5)然后输入 mysql 回车。发现不需要密码就等了了mysql 。出现welcome to the mysql 。。。。。
(6)选中mysql库,使用一下命令 use mysql; 回车
(7)将mysql中user表中的密码进行清空 输入 update user set authentication_string=’’ where user=‘root’; 回车
(8)将(3)中启动的DOS窗口关闭了,也就是将mysql的服务进行关闭了。然后重新开一个 cmd ,找到myslq的安装目录的bin文件夹。
(9) 开启mysql服务,输入 net start MySQL 回车
(10)mysql的服务启动之后,输入 mysql -u root -p 登陆MySQL。你已经将mysql的密码清空了,再提示输入密码的时候,直接回车就进入了mysql。
(11)修改mysql的密码为123456 输入
alter user’root’@‘localhost’ IDENTIFIED BY ‘123456’;
(12)最后重新验证,登录一下mysql,或者使用navicat登录。