当前位置:  开发笔记 > 数据库 > 正文

Sqoop:在映射任务期间从SQL Server导入"与主机xxxx的TCP/IP连接,端口1433失败"

如何解决《Sqoop:在映射任务期间从SQLServer导入"与主机xxxx的TCP/IP连接,端口1433失败"》经验,为你挑选了0个好方法。

在带有Sqoop 1.4.6的HDP 2.3.2上,我正在尝试从SQL Server 2008导入表.

我能够成功连接到SQL Server,因为我可以列出数据库和表等.

但是,在导入过程中每次遇到以下错误:

错误:java.lang.RuntimeException:java.lang.RuntimeException:com.microsoft.sqlserver.jdbc.SQLServerException:与主机xxxx,端口1433的TCP/IP连接失败.错误:"连接超时.验证连接属性.确保主机上正在运行SQL Server实例并接受端口上的TCP/IP连接.确保防火墙不阻止与端口的TCP连接. ".

我再次实际上能够从SQL Server成功导入,但只能在几次重试后才能成功导入.但是,无论导入成功还是失败,我总是得到上面提到的错误,我想知道是什么原因导致了这个问题?每当失败时必须继续重复导入是相当麻烦的.

我已经关闭了SQL Server上的连接超时,虽然来自Hadoop集群和SQL Server的连接通过我们的公司防火墙,但是我们的管理员告诉我防火墙上的超时是3600秒.在达到该标记附近之前,进口失败.

只是我使用的一个sqoop命令的示例:

sqoop import \
--connect "jdbc:sqlserver://x.x.x.:1433;database=CEMHistorical" \
--table StreamSummary --username hadoop \
--password-file hdfs:///user/sqoop/.adg.password --hive-import \
--hive-overwrite --create-hive-table --split-by OfferedTime \
--hive-table develop.streamsummary --map-column-hive Call_ID=STRING,Stream_ID=STRING,OriginalCall_ID=STRING,TransactionID=TIMESTAMP

更新:

在与我们的网络团队取得联系后,似乎这绝对是一个网络问题.要添加上下文,Hadoop集群与SQL Server位于不同的VLAN上,并且它通过许多防火墙.为了测试,我尝试从与Hadoop集群相同的VLAN内的不同SQL Server导入,但我根本没有遇到此异常.

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有