在Linux openSUSE上安装IBM DB2许可证

时间:2016-12-02 10:46:34

标签: linux db2 licensing

我试图允许在我的Linux openSUSE系统上运行的php脚本访问运行Z / OS的IBM DB2大型机。我在安装某种必需的许可证时遇到问题。 [Stackoverflow#02484] [1]提供了有关正在进行但没有细节的良好背景信息。

我最初被指示安装ibm_data_server_driver_package的企业版,这很顺利,我的php脚本在db2的本地快速版本上工作正常,但在我尝试访问我们公司的主机时失败了:

[IBM][CLI Driver] SQL1598N  An attempt to connect to the database server failed because of a licensing problem.  SQLSTATE=42968

这个'企业'数据服务器包似乎不包含安装许可证所需的任何实用程序。然后我被指示下载并安装一个ibm_db2_connect_unlimitedEdition_SystemZ_QuickStart_Activation_11.1,其中包含一个简单的脚本db2connectactivate.sh,它调用了一个java程序,我使用如下:

java -classpath db2jcc.jar:db2connectactivate.jar com.ibm.db2.jcc.DB2ConnectActivate -caller db2connectactivate.sh -host x.y.z.com -port 7777 -database abc123 -user UUUUUU -password XXXXXX -activatorsqlid '$DDDDDD'

失败了:

[license activator][709][13431]Activation failed.
              SQLCODE: -552
              SQLSTATE: 42502
              Message: DB2 SQL Error: SQLCODE=-552, SQLSTATE=42502, SQLERRMC=$DDDDDD;CREATE PROCEDURE, DRIVER=3.71.22

本地DB2支持人员都是基于Microsoft的,对Linux的帮助很小。他们声明我的帐户确实拥有足够的权利,然后试图通过“db2”和“db2”来找到各种各样的事情。命令不存在。我很迷惑。许可证在哪里?它是在主框架上还是在QuickStart_Activation包中? java程序做什么,下载并保存需要保存的任何密钥或令牌?我已经尝试将java程序作为本地root和我自己运行。

有人可以解释发生了什么以及我必须做些什么来授权我的驱动程序?

2 个答案:

答案 0 :(得分:1)

有DB2,然后是DB2。根据特定的DB2服务器变体,您可能需要IBM的许可证才能启用驱动程序。根据您与IBM的协议以及如何连接到数据库,似乎有几种不同类型和方式的安装许可证。

  1. 服务器可能根本不需要驱动程序的许可证。这适用于DB2 express版本。
  2. 大型机版本可能包含一个特殊许可证,允许任何驱动程序在没有特定许可证设置的情况下进行连接。这可能是无限制的变种。
  3. 可能需要在安装时为每个驱动程序添加许可证文件。这可能是企业变体。
  4. 这是您用于执行需要DB2服务器上的适当权限的安装的帐户的补充。根据您安装客户端的方式,消息不清楚,并指示帐户没有足够的权限,而不是缺少许可证。根据许可证情况,驱动程序安装似乎有很大不同。

    在我们的案例中,IBM的支持特别无益。确实在与IBM支持人员合作两个月后,我们仍然没有工作的驱动程序!

答案 1 :(得分:0)

SQLCODE = -552表示授权标识没有执行操作的特权

您是否可以使用正确的数据库,数据库用户和密码运行如下参数。

./db2connectactivate.sh -host x.y.z.com -port 7777 -database abc123 -user db2admin -password adminpassword 

看看db2connectactivate - Server license activation utility