zendstudio连接mysql数据库显示 Access denied for user 'root'@'localhost' (using password: YES)怎么解决
时间: 2023-11-22 08:50:55 浏览: 94
mysql Access denied for user ‘root’@’localhost’ (using password: YES)解决方法
3星 · 编辑精心推荐
根据提供的引用内容,出现“Access denied for user 'root'@'localhost' (using password: YES)”错误提示,说明连接MySQL数据库时使用的用户名或密码不正确。解决方法如下:
1. 确认MySQL数据库的用户名和密码是否正确,可以通过以下命令登录MySQL数据库并查看用户列表:
```shell
mysql -u root -p
# 输入密码后登录成功后,执行以下命令查看用户列表
SELECT User, Host FROM mysql.user;
```
如果发现用户名或密码不正确,可以通过以下命令修改密码:
```shell
mysqladmin -u root password "newpassword"
```
其中,newpassword为新的密码。
2. 确认MySQL数据库的授权是否正确,可以通过以下命令查看用户的授权情况:
```shell
mysql -u root -p
# 输入密码后登录成功后,执行以下命令查看用户的授权情况
SHOW GRANTS FOR 'root'@'localhost';
```
如果发现用户没有对应的权限,可以通过以下命令为用户授权:
```shell
GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;
```
其中,password为用户的密码。
3. 确认MySQL数据库的防火墙是否开启,如果开启了防火墙,需要开放MySQL数据库的端口号。MySQL数据库的默认端口号为3306,可以通过以下命令开放端口号:
```shell
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
```
这样就可以解决“Access denied for user 'root'@'localhost' (using password: YES)”错误提示了。
阅读全文