连接到mysql应用程序的端口3306时出现问题

连接到mysql应用程序的端口3306时出现问题,mysql,telnet,Mysql,Telnet,我正在使用的Java应用程序应该将其结果数据写入mysql数据库,但每当我运行它时,就会出现以下异常: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure 原因如下: Caused by: java.net.ConnectException: Connection refused 当然,我的下一步是测试mysql试图连接的端口(3306) 我的下一步是查看端口3306是否正在

我正在使用的Java应用程序应该将其结果数据写入mysql数据库,但每当我运行它时,就会出现以下异常:

com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
原因如下:

Caused by: java.net.ConnectException: Connection refused
当然,我的下一步是测试mysql试图连接的端口(3306)

我的下一步是查看端口3306是否正在侦听

$ netstat -an|grep 3306
tcp        0      0 69.164.214.18:3306      0.0.0.0:*               LISTEN
总之,端口正在侦听但不接受连接?
我必须承认,我对此不太了解,但有人知道这里发生了什么吗?

我明白了。我需要从外部连接到mysql,但我的程序试图在本地访问它。

清单:

  • 防火墙规则:如果您的服务器拒绝/不允许3306端口,则无法连接它
  • 绑定地址:如果您的绑定地址在MySQL配置中为127.0.0.1,则必须在/etc/MySQL/my.cnf上的[mysqld]中更改为0.0.0.0
  • 重启服务:您必须运行命令“Service mysql Restart”

  • 祝你好运。

    也许你需要在防火墙例外列表中包括端口/应用程序。。。因此允许远程连接到端口…:)啊,是的,抱歉,我忘了在iptables中添加3306
    $ netstat -an|grep 3306
    tcp        0      0 69.164.214.18:3306      0.0.0.0:*               LISTEN