【问题标题】:IBM.Data.DB2 "Connect processing failed; a valid product license was not found"IBM.Data.DB2“连接处理失败;未找到有效的产品许可证”
【发布时间】:2022-04-08 20:17:11
【问题描述】:

我使用 IBM.Data.DB2 提供程序在 .NET C# 中制作了一个小型桌面应用程序,连接到 z/OS 上的 IMB DB2。当我在一台机器上部署这个应用程序时,我遇到了 IBM DB Connect 的运行时问题,然后我发现我必须安装 DB2 Run-Time Client Lite,我就这样做了。现在,当我运行应用程序时,会出现错误:

ERROR[42968][IBM] SQL8002N Connect processing failed; a valid product license was not found. SQLSTATE=42968

注意:我可以使用 HIS 库连接相同的数据库。

【问题讨论】:

    标签: .net db2


    【解决方案1】:

    您将无法使用任何 lite 版本访问 z/OS DB2 远程入口点。使用 IBM JDBC 驱动程序,您需要企业版来连接到 z/OS,这几乎可以肯定与使用 C# 相同 - 这是为了保护大型机免受各种客户端的影响,这些客户端没有'企业之神'。

    如果您没有有效的许可证,客户端甚至不会尝试连接到大型机。您收到的错误代码和状态与我描述的情况完全一致。

    IBM 非常密切地保护(或者更准确地说,允许他们的客户保护)他们的大型机 DB2 访问。我怀疑这与确保只有企业支持的应用程序才能尝试连接有关。没有正确许可文件的 JDBC 客户端甚至不会让他们的请求出现在大型机 TCP 端口上,它们在客户端被阻止 - 大型机通常对大多数桌面/服务器应用程序来说是关键业务梦想成为:-)。

    使用 IBM JDBC 驱动程序,使用单个 type-4 驱动程序来访问所有 DB2 平台(LUW、iSeries、System z 等),但您实际上必须在特定平台的 CLASSPATH,否则会出现异常。

    此许可文件的格式为“db2jcc_cisuz.jar”,其中 cisuz 指定允许访问哪些平台(cu 是最常见的,但它不允许访问 iSeries 或 System z)。

    您通常必须从 IBM 购买 DB2 Connect 才能获得这些文件,我怀疑 .NET 框架也会出现类似情况。您可能会发现 DB2 Connect 产品具有 .NET 客户端驱动程序以及 JDBC(我没有查看)。寻找该产品的“企业”版,因为标准版不太可能拥有 System z 许可证。

    【讨论】:

      猜你喜欢
      • 2021-01-16
      • 2019-10-20
      • 2018-06-21
      • 1970-01-01
      • 2021-07-01
      • 1970-01-01
      • 2015-02-01
      • 2010-11-16
      • 1970-01-01
      相关资源
      最近更新 更多