MySQL可以';t连接到外部服务器


MySQL Can't Connect to External Server

我正试图通过新的MySQL安装连接到外部服务器,但似乎超时了。其他服务器管理员已授予对特定帐户和ip地址的访问权限。我尝试运行以下内容:

mysql --host=hostname -u username -ppassword database

但只要得到以下内容:

ERROR 2003 (HY000): Can't connect to MySQL server on 'hostname' (110)

我在我的/etc/mysql/my.cnf文件中调整了以下内容:

bind-address            = 0.0.0.0

并重新启动,但无济于事。有什么建议吗?

如果您已经检查了防火墙是否允许MySQL流量(通常是端口3306)通过并且服务正在运行,那么最可能的原因是服务器上的细粒度权限。用户可能不被允许从任何主机连接,可能连接的权限是基于IP或类似的。

我会尝试使用该代码,但不提供密码,比如:

mysql -h hostname -u username -p database

并在该命令之后插入密码(它会要求输入)。

您也可以尝试提供一个端口:例如--port=3306

您也可以尝试提供协议--protocol=TCP

我唯一的最后一个想法是,你不提供数据库,并在访问服务器后输入数据库。。。

对不起,不能用这些数据做任何其他事情。

尝试授予用户从远程计算机访问数据库的权限。这样做:

mysql> GRANT all on database.* to 'username'@'%' IDENTIFIED BY 'user_password';

不建议这样做,因为这将允许从任何地方连接到您的mysql服务器。为了允许连接到某个ip地址中的用户(我们使用8.8.8.8作为示例),请使用下面的代码

mysql>GRANT all on database.*to'username'@'8.8.8.8'IDENTIFIED BY'user_password';

问题在于授予用户的权限。试着改变许可证,希望它能对你有所帮助。