创建联合(数据虚拟化)服务器时发生通信错误(目标为Cloud上的DB2)

时间:2019-03-20 16:33:10

标签: db2 ibm-cloud dashdb

在创建联合服务器时出现错误,该联合服务器的目标服务器是Cloud上的DB2,联合源是Cloud上的DB2 Warehouse。

错误消息(在下面运行第二个命令时):

  

在从以下位置发送或接收数据时发生通信错误“ 104”   远程数据库。SQLCODE= -30080,SQLSTATE = 08001,DRIVER = 4.24.92

命令在云控制台上的DB2 Warehouse上运行:

CREATE WRAPPER DRDA;  
CREATE SERVER DP_DB_SERVER TYPE DASHDB VERSION 11.1 WRAPPER DRDA AUTHORIZATION "bluadmin" PASSWORD "*****" OPTIONS (
    HOST '******.dal.bluemix.net', PORT '50001', DBNAME 'BLUDB');

仅供参考-目标数据库是具有Flex Plan的云上的事务数据库。我能够使用jdbc客户端工具(SQL Workbench / J)连接到目标数据库并运行查询。另外,我还可以以其他方式创建服务器,例如,将目标作为Cloud上的DB2仓库,将联合源作为Cloud上的DB2。

更新:尝试将端口更改为50000,并获得了不同的通信错误-A

  

发生通信错误“ 110”,从   远程数据库.. SQLCODE = -30080,SQLSTATE = 08001,DRIVER = 4.24.92

不胜感激。谢谢。

2 个答案:

答案 0 :(得分:0)

文档为Linux上的通信错误104(连接重置)提供了以下信息。

建议您完成每个步骤并消除每种可能性。

由于源和目标都在云中,因此您应该验证是否在它们之间打开了相关端口。

  

连接的伙伴已关闭连接。

     

检查合作伙伴端的任何超时限制。

     

例如防火墙,应用程序,DB2 CLI层等

     

如果在使用ODBC / CLI的客户端应用程序上报告了错误   连接到DB2 UDB服务器:

     

禁用DB2的CLI超时:

     

在客户端的db2cli.ini文件中添加“ QUERYTIMEOUTINTERVAL = 0”   一侧。

     

检查客户端和服务器之间是否有防火墙。

     

打开连接是否有时间限制

     

检查应用程序是否有超时。

     

例如ADO超时,VB超时。

     

此错误也可能是由以下问题引起的   technote_1395285

     

使用其他别名对本地数据库连接进行编录时   名称而不是数据库名称,尝试时可能会收到错误SQL30081   使用TCPIP连接连接到该数据库。

     

如果在尝试连接数据库时收到该错误,请进行   确保在该数据库所在的计算机上该数据库是   没有使用与数据库名称不同的别名来分类。

答案 1 :(得分:0)

尝试在CREATE SERVER定义中使用端口50000

2017年9月8日发布的Db2 Warehouse on Cloud入门联盟新增内容

  

联盟

     

现在,基于非SSL连接的基于Db2的源可以使用联合身份验证(以前称为“流体查询”)功能。

请注意non-SSL connections的限制