apache-spark - spark/sqoop 到 db2 的错误原因是:com.ibm.db2.jcc.am.DisconnectNonTransientConnectionException
问题描述
尝试使用 sqoop 和 spark 将数据从 db2 导入 hdfs 时出现以下错误。
Caused by: com.ibm.db2.jcc.am.DisconnectNonTransientConnectionException: [jcc][t4][2043][11550][3.66.46] Exception java.net.ConnectException: Error opening socket to server ip-xx.xx.xx.ec2.interna on port 50,000 with message:
尝试使用火花本地模式时,我能够获取数据。但在纱线模式下出现错误
解决方案
您正在使用旧的 jdbc 3.0 驱动程序(来自 Db2 V10.5 fixpack 0 (GA)。
升级到最新的 jdbc 4.0 驱动程序 (db2jcc4.jar) 版本 4.26.14 或更高版本。
在某些情况下,此升级将解决 DisconnectNonTransientConnectionException 问题。
从这里下载。
如果症状重复出现,请做更多的问题确定。连接超时 (sqlcode=-4499) 几乎总是配置错误。
具体验证集群名称/地址和端口号是否正确,没有防火墙问题,并进行 jdbc 跟踪以查看幕后发生的情况(需要研究)。
Db2 知识中心在线详细介绍了如何在客户端收集 jdbc 跟踪信息。
Db2 知识中心还提供了有关如何在客户端和服务器之间的路由复杂或存在延迟问题时增加TCPIP 连接超时的详细信息。
推荐阅读
- amazon-web-services - AWS Cognito 用户状态“已归档”是由 AWS 设置还是由用户请求设置?
- node.js - Heroku 未检测到 Node.js 应用程序
- maven - Gitlab CI在部署阶段没有后台JAR文件
- javascript - 在 Shadow DOM 的 CSS 中从 Light DOM 访问全局状态
- javascript - Node.js IF 语句由于某种原因不起作用
- java - Android 通知生成器声音不运行
- asp.net-core - 用于 ASP.NET Core 中托管的 Angular 的 URL 重写的 Web.config 文件 IIS 规则无法按预期工作
- c - 我可以在没有额外编译步骤的情况下定义库所需的 C extern 函数吗?
- html - CSS html图像不堆叠
- flutter - 我怎样才能复制这个设计?