连接数据库出现错误:1045-Access denied for user 'root'@'localhost'解决方法

Posted 潇潇六月雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了连接数据库出现错误:1045-Access denied for user 'root'@'localhost'解决方法相关的知识,希望对你有一定的参考价值。

Navicat for mysql

链接: https://pan.baidu.com/s/1slwQxVB 密码: r737

 

1、出现这个问题的原因之一是权限的问题,也就是说你的电脑可能没有权限访问mysql数据库。

讲道理这种情况其实基本上不该遇到,因为我们在安装mysql之后,root其实是有最高权限的,而且很少会有人去修改root的权限。

这个问题的解决方法就是授权。授权命令大概是这样的:

grant all privileges on *.* to ‘root‘@‘192.168.0.103‘ identified by ‘123456‘;
如果你是本地登录的,那么:
grant all privileges on *.* to ‘root‘@‘localhost‘ identified by ‘123456‘;
当然你也可以直接改成这样:
grant all privileges on *.* to ‘root‘@‘%‘ identified by ‘123456‘;
就可以给所有ip都设定root登陆了。
如果授权成功,会有Query OK的提示。
然后:
flush privileges;
这个是刷新授权的意思,如果没有这句话,授权可能无法立刻生效。
exit;
这个是退出的意思。

 

 

mysql> UPDATE user SET Password=PASSWORD(’newpassword’) where USER=’root’; 
mysql> FLUSH PRIVILEGES; 
mysql> quit 
# mysql -uroot -p 
Enter password: <输入新设的密码newpassword> 
mysql> 

 

以上是关于连接数据库出现错误:1045-Access denied for user 'root'@'localhost'解决方法的主要内容,如果未能解决你的问题,请参考以下文章

PHP连接Mysql数据库出现Warning: mysqli_connect(): (HY000/1045): Access denied的解决办法

用heidisql连接远程mysql数据库提示SQL错误1045,Access denied for...

解决用navicate远程连接数据库出现1045 access denied for user 'root'@'localhost' using password ye

Django链接Mysql 8.0 出现错误(1045:Access denied for user 'root'@'localhost' (using passwor

连接本地数据库出现:1045 - Access denied for user 'root'@localhost'(using password:YES) 本人解决方案:(示

Laravel [1045] Access denied for user 'homestead'@'localhost' .env没有配置