Navicat连接发现报ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES),
一,关闭mysql服务
在任务搜索栏输入cmd,鼠标放在cmd上右击,以管理员的身份运行cmd
这样以管理员方式打开cmd
然后输入net stop mysql
二,跳过权限验证
在命令窗口中输入mysqld --console --skip-grant-tables --shared-memory
三,再次以管理员的身份打开另一个cmd窗口,接着直接输入mysql(刚才的命令窗口不要关闭)
输入alter user root@localhost identified by 'root';
会报错,不要急
四,刷新mysql权限,再次执行命令
flush privileges;
alter user root@localhost identified by 'root';
ERROR 1396 (HY000): Operation ALTER USER failed for ‘root’@‘localhost’
这时就
use mysql
select user,host from user;
这里我们可以看到,我的user为root,而我的host为%,所以我的命令应该改为:
alter user 'root'@'%' identified by 'root';
然会就会成功
五,关闭第一次打开的窗口,然后quit
六,重启mysql服务,并登录测试
输入net start mysql
这里我们先输入一个错误的密码,以防止还是以无密码状态登录
再次输入mysql -u root -p输入成功后就可以链接了