unbuntu中mysql报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
时间: 2023-09-30 19:11:06 浏览: 102
您好!对于MySQL报错ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO),这通常表示连接MySQL时使用了错误的用户名或密码,或者没有提供密码。
如果您之前设置过MySQL的密码并且尝试使用root用户连接时出现此错误,请尝试以下解决方法:
1. 使用正确的用户名和密码:确保使用正确的用户名和密码连接MySQL。如果您不确定密码是否正确,可以尝试通过重置密码来解决。
2. 使用"-p"参数提供密码:在命令行中连接MySQL时,确保提供正确的密码。例如,可以使用以下命令连接MySQL并提供密码:
```
mysql -u root -p
```
然后输入密码以登录。注意,在命令行中密码不会显示任何字符,所以输入时请注意。
如果您尚未设置过MySQL的密码或忘记了密码,请按照以下步骤重置密码:
1. 停止MySQL服务:
```
sudo service mysql stop
```
2. 以跳过授权表的方式启动MySQL服务:
```
sudo mysqld_safe --skip-grant-tables &
```
3. 连接到MySQL服务器:
```
mysql -u root
```
4. 在MySQL命令行下执行以下语句来更新root用户的密码:
```
UPDATE mysql.user SET authentication_string=PASSWORD('new_password') WHERE User='root';
FLUSH PRIVILEGES;
```
注意将`new_password`替换为您想要设置的新密码。
5. 退出MySQL命令行并停止MySQL服务:
```
quit;
sudo service mysql stop
```
6. 启动MySQL服务:
```
sudo service mysql start
```
现在您应该可以使用新密码连接MySQL了。希望这对您有帮助!如有其他问题,请随时提问。
阅读全文