linux连接mysql报错Access denied for user 'root'@'localhost' (using password: YES)
时间: 2023-09-23 11:07:15 浏览: 108
Linux连接MySQL报错"Access denied for user 'root'@'localhost' (using password: YES)"通常是由于输入的密码错误导致的。你可以尝试以下几种解决方法来解决这个问题:
1. 确保输入的密码是正确的。请仔细检查密码是否正确输入,并确保大小写是否匹配。
2. 如果你忘记了MySQL的root用户密码,你可以尝试使用以下方法重置密码:
a. 打开终端,并输入以下命令以登录MySQL并切换到mysql数据库:
```
mysql -u root -p
```
b. 输入你的MySQL root用户密码,如果密码正确,你将成功登录到MySQL。
c. 执行以下命令进行密码重置:
```
update mysql.user set authentication_string=password('新密码') where user='root' and host='localhost';
```
注意将“新密码”替换为你想要设置的新密码。
d. 退出MySQL终端,并尝试使用新密码登录MySQL。
3. 如果你想使用免密登录的方式连接MySQL,你可以尝试以下方法:
a. 关闭MySQL服务。你可以使用以下命令关闭MySQL服务:
```
systemctl stop mysqld
```
b. 打开MySQL配置文件。你可以使用以下命令打开MySQL配置文件:
```
sudo vi /etc/my.cnf
```
c. 在配置文件中添加以下内容:
```
skip-grant-tables
```
d. 保存并退出配置文件。
e. 启动MySQL服务。你可以使用以下命令启动MySQL服务:
```
systemctl start mysqld
```
f. 现在你可以尝试以免密登录的方式连接MySQL。
请根据具体情况选择适合你的解决方法,并根据步骤进行操作。
阅读全文