我試圖讓我的Linux openSUSE系統上運行的PHP腳本訪問運行Z/OS的IBM DB2大型機。我在安裝某種所需許可證時遇到問題。 [Stackoverflow#02484] [1]提供了很好的背景,但沒有詳細說明。在Linux上安裝IBM DB2許可證openSUSE
我原本奉命安裝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
此「企業」數據服務器程序包似乎沒有包含安裝許可證所需的任何實用程序。然後我被引導到下載和安裝這個包含一個簡單的腳本db2connectactivate.sh其稱爲Java程序,這是我作爲跟隨ibm_db2_connect_unlimitedEdition_SystemZ_QuickStart_Activation_11.1:
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支持人員都是基於微軟的,在Linux上幫助甚微。他們聲明我的賬戶確實有足夠的權利,然後試圖通過不存在的'db2'命令找到我所有的東西。我很困惑。許可證在哪裏?它是在主框架上還是在QuickStart_Activation包中? java程序做了什麼,下載並保存需要保存的任何密鑰或令牌?我試圖運行Java程序作爲本地根和我自己。
任何人都可以解釋發生了什麼事以及我必須做什麼來授權我的驅動程序?
謝謝,我最初嘗試過,它給出了同樣的錯誤。 DB2支持人員已經驗證了這些論點是正確的。但我被告知要將-activatorsqlid'$ DDDDDD'添加到命令中。在最後一個參數中有各種各樣的問題,所以我們直接調用java程序。 – ferg