1

我正在尝试使用 sqoop 将数据从 HDFS 传输到 MSSQL 服务器。但由于某些原因,sqoop 挂在

tool.BaseSqoopTool: Enabled debug logging.
sqoop.ConnFactory: Added factory com.microsoft.sqoop.SqlServer.MSSQLServerManagerFactory specified by /usr/lib/sqoop/conf/managers.d/mssqoop-sqlserver
DEBUG sqoop.ConnFactory: Loaded manager factory: com.microsoft.sqoop.SqlServer.MSSQLServerManagerFactory
DEBUG sqoop.ConnFactory: Loaded manager factory: com.cloudera.sqoop.manager.DefaultManagerFactory
DEBUG sqoop.ConnFactory: Trying ManagerFactory: com.microsoft.sqoop.SqlServer.MSSQLServerManagerFactory
INFO SqlServer.MSSQLServerManagerFactory: Using Microsoft's SQL Server - Hadoop Connector
INFO manager.SqlManager: Using default fetchSize of 1000
DEBUG sqoop.ConnFactory: Instantiated ConnManager com.microsoft.sqoop.SqlServer.MSSQLServerManager@45db05b2
INFO tool.CodeGenTool: Beginning code generation
DEBUG manager.SqlManager: No connection paramenters specified. Using regular API for making connection.

我检查了防火墙,它允许没有任何限制的连接。Sqoop 已通过身份验证,但在通过身份验证后不会启动 map reduce 作业。有没有人遇到过类似的问题?

4

3 回答 3

0

我们的机器上运行着 MsSQL 服务器。问题是特定版本的 JVM(Java(TM) SE 运行时环境(构建 1.6.0_29-b11))有错误并导致客户端在 getconnection 方法中挂起。 http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=7103725 我们升级到新版本,一切正常。

于 2012-10-17T19:18:12.207 回答
0

您的 SQL Server 是否在虚拟机上运行?我对 Oracle 也有类似的问题。我在具有静态 IP 和桥接网络适配器的 VM 上运行 Oracle。与 Oracle 服务器在同一网络内的服务器可以正常连接,但网络外的服务器显示相同的症状。解决方案是从桥接接口更改为 NAT 接口。然后你需要在主机上设置一个端口转发规则到你的数据库服务器,并使你的 Sqoop 连接到主机 IP 而不是 VM 的 IP。我花了好几天才弄明白。希望能帮助到你。

于 2012-10-13T00:27:31.783 回答
0

尝试使用--verbose打印更多信息。

于 2012-05-01T05:49:39.700 回答