2016-05-30 152 views
0

我有一个从AA远程SQL服务器获取数据的pyspark应用程序,它JDBC连接超时错误在连接火花应用到远程SQL Server

工作正常,直到最近,我已经升级我的SQL Server 2016 CTP3以sql

服务器2016年RC3开发人员版本,现在我无法再连接到数据库,具有相同的配置,我可以连接。我不知道发生了什么,并尝试了所有可能的方法来弄清楚。

错误消息:

: com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host myserver.cloudapp.net, port 1433 has failed. Error: "connect timed out. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall." 

我知道为什么会发生,并且是什么可能的原因,我已确保在每一个可能的方式来应对这种

  1. 停在[MYSERVER]
  2. 防火墙
  3. 确保我的sqlserver服务在其配置管理器中运行
  4. 我已启用tcp ip连接并侦听1433端口中的所有IP。
  5. enter image description here enter image description here

我的火花的应用程序驻留在蔚蓝HDInsight火花集群和我的SQL

服务器数据库是在Windows 2012服务器(不知道这使得任何

差) ,尽管我能够用相同的配置从相同的集群连接到先前的Windows服务器

N ow netstat -a在我的服务器显示有多个已建立的连接,其中本地地址是我的机器IP和端口是1433.there很少超时请求,但它们不在1433端口,我认为这意味着它们与我无关sql服务器连接。

是有办法,我可以找出什么是错在这里,我想我已经覆盖了所有可能的原因在那里它可能会发生,但我仍然得到这个错误

回答

0

了很多的努力后,我发现我的问题是云防火墙,所以如果您使用的是Azure或AWS,请确保您也打开云防火墙中的端口1433。希望这有助于某人。