-805从ADF中的DB2数据源提取数据时发生错误 [英] -805 Error when pulling data from a DB2 data source in ADF

查看:305
本文介绍了-805从ADF中的DB2数据源提取数据时发生错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我们已经创建了一个Azure数据工厂连接,并且当我们单击测试连接"时连接成功.但是,每当我们尝试使用此连接从DB2中提取数据时,都会收到一条错误消息:

We have created an Azure Data Factory connection and the connection succeeds when we click "Test Connection". However, whenever when we try to pull data from DB2, using this connection, we get an error that says:

"

"-805,Source=Microsoft.DataTransfer.ClientLibrary.Db2Connector,''Type=Microsoft.HostIntegration.DrdaClient.DrdaException,Message=The package corresponding to an SQL statement execution request was not found."

我们已经从MSDN找到了说明文件:

",如果您收到一条错误消息,指出未找到与SQL语句执行请求相对应的程序包. SQLSTATE = 51002 SQLCODE = -805'.原因是未创建所需的软件包 对于此类操作系统上的普通用户.根据您的DB2服务器类型,遵循以下指示信息:

"If you receive an error message that states 'The package corresponding to an SQL statement execution request was not found. SQLSTATE=51002 SQLCODE=-805'. The reason is a needed packages is not created for normal user on such OS. Follow these instructions according to your DB2 server type:

  • DB2 for i(AS400):让超级用户在使用复制活动之前为登录用户创建集合.命令:'create collection< username>'
  • DB2 for z/OS或LUW:使用高特权帐户-具有软件包权限和BIND,BINDADD,GRANT EXECUTE T​​O PUBLIC权限的超级用户或管理员-一次运行复制活动,然后运行所需的软件包 在复制过程中自动创建.之后,您可以切换回普通用户以进行后续副本运行."
  • DB2 for i (AS400): let power user create collection for the login user before using copy activity. Command: 'create collection <username>'
  • DB2 for z/OS or LUW: use a high privilege account - power user or admin with package authorities and BIND, BINDADD, GRANT EXECUTE TO PUBLIC permissions - to run the copy activity once, then the needed packages is automatically created during copy. Afterwards, you can switch back to normal user for your subsequent copy runs."

我们已经尝试了两种建议的解决方案,但都没有为我们工作.

We have tried both of the suggested solutions and neither has worked for us. 

在DB2上使用管理员帐户时,我们可以获取数据,但是我们不想将这些凭据保留在Prod的连接设置中.与上述解决方案不同,另一个用户帐户仍无法从大型机获取数据并接收 "-805 ...找不到与SQL语句执行请求相对应的SQL包".

We can get data when using an admin account on the DB2, however we do not want to leave those credentials in the connection settings in Prod. The other user account, unlike what the solution above states, still cannot get data from the Mainframe, and receives the "-805... The SQL package corresponding to an SQL statement execution request was not found".

 我们是否只需要赋予替换帐户更高的权限,还是有其他解决方法?

 Do we simply have to give the replacement account higher permissions or is there another way around this? 

感谢愿意提供帮助的人!

Thanks anyone who is willing to help!

推荐答案

不确定根本原因,作为解决方法,您可以使用admin帐户连接到DB2存储.

Not sure about the root cause, as a workaround, you could use the admin account to connect to the DB2 store.

为避免将凭据放在连接字符串中,ADFv2使您可以引用存储在 中的凭据. Azure Key保管箱.

To avoid putting credentials in connection string, ADFv2 enables you reference the credentials storing in the  Azure Key Vault.

谢谢.


这篇关于-805从ADF中的DB2数据源提取数据时发生错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆