MySQL似乎忽略了–host参数

我需要连接到服务器上的一个MySQL数据库,我无法通过防火墙访问该数据库。 不过,我可以通过SSH访问另一台服务器,这个服务器可以通过我的目标服务器上的防火墙。

我SSH'd到后者(让我们说host1),然后我试图执行以下命令:

mysql --host=host2 --user=username --password=password 

我得到以下回应:

 Access denied for user 'username'@'host1' (using password: YES) 

为什么它试图连接到host1(即本身)?

注意:我在这里的任何地方都不使用localhost

你误解了这个错误,就是说从host1连接的用户username被拒绝访问。 错误来自host2

该错误实际上是说“您正在尝试使用来自 host1 username ”。

您需要在host1上添加username权限。 你可以发布SHOW GRANTS FOR 'username'而以host2身份login到MySQL?

编辑:Ninja'd 🙂

我有这个错误,因为我用于数据库的密码错误。 这是MySQL的版本是5.1.61的情况。

所以确保你的数据库的密码是正确的。