user '-p'@'localhost' (using password: YES) when trying to connect
时间: 2023-12-05 15:41:27 浏览: 62
根据提供的引用内容,这个错误信息通常是由于用户在尝试连接MySQL数据库时使用了错误的用户名或密码。其中,'mysqladmin'和'root'都是MySQL数据库的默认用户,但是如果您没有为这些用户设置密码,则无法使用密码进行连接。如果您已经为这些用户设置了密码,则需要确保在连接时使用正确的密码。
以下是一些可能有用的步骤来解决这个问题:
1. 确保您正在使用正确的用户名和密码进行连接。如果您不确定,请尝试使用默认的MySQL用户名和密码进行连接。
2. 确保您的MySQL服务器正在运行。您可以使用以下命令检查MySQL服务器的状态:
```shell
systemctl status mysql
```
3. 确保您的MySQL服务器允许远程连接。如果您正在尝试从远程计算机连接到MySQL服务器,则需要在MySQL服务器上启用远程连接。您可以通过编辑MySQL配置文件来完成此操作。在Ubuntu上,MySQL配置文件位于/etc/mysql/mysql.conf.d/mysqld.cnf。您需要将bind-address设置为0.0.0.0以允许来自任何IP地址的连接。请注意,这会使您的MySQL服务器更加容易受到攻击,因此请确保在启用远程连接之前采取必要的安全措施。
4. 如果您仍然无法解决问题,请尝试重置MySQL用户的密码。您可以使用以下命令重置MySQL用户的密码:
```shell
sudo mysql -u root
use mysql;
update user set authentication_string=password('your_new_password') where user='your_username';
flush privileges;
quit;
```
请将your_new_password和your_username替换为您要重置密码的用户名和新密码。
阅读全文