在第 8.1 版中,DB2 OLAP Integration Server 也需要 Java,但是與 DB2 OLAP Server 所用的層次不相同。下列表格中便會列出您將需要的 Java 層次:
表 13. 各種 UNIX 作業系統所需的 Java 層次。
產品 | 作業系統 | Java Runtime Environment 層次 |
---|---|---|
DB2 OLAP Server | AIX | 1.2.2 |
Solaris | 1.3.0 | |
HP-UX | 1.2.2 | |
DB2 OLAP Integration Server | AIX | 1.3.0 |
Solaris | 1.3.0_02 | |
HP-UX | 1.3.0.01 |
如果要在 UNIX 上,讓 Java 能搭配 DB2 OLAP Server 和 DB2 OLAP Integration Server 使用,請執行下列步驟:
每一種支援平台的 JRE 安裝套件和安裝程序,大體上都不太一樣。JRE 供應商所提供的 README 檔和安裝指示,都在每一項套件所隨附的 .txt 或 .htm 檔案中。請仔細複查這些指示。您可能需要參照 JRE 供應商的網站,以便取得其他關於安裝 JRE 的資訊。
在遵循於 UNIX 上設定 Java 的指示之後,如果對於讓 DB2 OLAP Server 使用 Java 您仍有困難時,則必須設定 Java Virtual Machine (JVM) 的啟動選項。您可以設定環境變數 ESS_JVM_OPTION1 到 ESS_JVM_OPTION9,讓 DB2 OLAP Server 在載入 JVM 時,能使用特定的 JVM 啟動選項。
如果要安裝 Java Runtime Environment 程式碼,請遵循下面的步驟,不論您正在使用的是哪一種 UNIX 作業系統:
tar -xvf jrte_<platform>_ess.tar
AIX 需要在安裝本套件之前,先安裝下列的套件。您必須具有安裝這些套件的 root 權限:
對於下列檔案,請使用 Smitty 公用程式,以便安裝 DB2 OLAP Server 的 JRE:
java_devX.rte
其中 X 為版本層次。
接著,您需要設定您作業系統的 Java 環境變數。
如果要在 Solaris 上安裝 Java,請更新 .bin 檔案上的許可權:
chmod +x jXrel_XXXXX-solsparc.bin
其中 XXXXX 代表特定的版本號碼。然後再執行自我解壓縮二進位檔:
jXrel_XXXXX-solsparc.bin
接著,您需要設定您作業系統的 Java 環境變數。
如果要安裝 Java Runtime Environment (JRE),請執行下列指令:
swinstall rte_XXXXX.depot
其中 XXXXX 代表特定的版本號碼。
接著,您需要設定您作業系統的 Java 環境變數。
在 UNIX 作業系統上,您必須更新環境變數,以便讓 DB2 OLAP Server 使用 Java Runtime Environment。JREHOME 代表 JRE 的安裝目錄。
在設定下列環境變數之後,請登出系統,然後再返回並啟動新的設定。執行下列指令,在啟動 DB2 OLAP Server 之前,先驗證 Java 版本是否正確:
>java -fullversion
針對 DB2 OLAP Server,您將會看到:
也會提供 Script 來設定環境變數,以便符合正確層次的 JRE。表 2 中顯示各項產品應使用的 Script。
表 14. 符合 DB2 OLAP Server JRE 層次的環境變數
產品 | Shell | Script |
---|---|---|
DB2 OLAP Server | Korn 或 Bourne | essjava.sh |
DB2 OLAP Server | CShell | essjava.csh |
在 AIX 上,您必須更新 LIBPATH 設定,以便包含 JREHOME/bin/ 以及 JREHOME/bin/classic 目錄。這些 LIBPATH 目錄項目,必須新增到 LIBPATH 環境變數的開頭。
如果您使用 C shell,請將下列文字新增到 .cshrc 檔案中:
setenv JREHOME "/usr/java_dev2/jre" setenv LIBPATH "${JREHOME}/bin:${JREHOME}/bin/classic:${LIBPATH}" setenv LD_LIBRARY_PATH "${JREHOME}/bin:${JREHOME}/bin/classic:${LD_LIBRARY_PATH}" set path=( ${JREHOME}/sh /usr/java_dev2/sh/ $path ) setenv CLASSPATH "${ARBORPATH}/java/jaxp.jar:${ARBORPATH}/java/parser.jar:${CLASSPATH}"
如果您使用的是 Bourne 或 Korn shell,請將下列文字新增到 .profile 檔案中:
export JREHOME=/usr/java_dev2/jre export LIBPATH=$JREHOME/bin:$JREHOME/bin/classic:$LIBPATH export LD_LIBRARY_PATH=$JREHOME/bin:$JREHOME/bin/classic:$LD_LIBRARY_PATH export PATH=$JREHOME/sh:/usr/java_dev2/sh:$PATH export CLASSPATH=$ARBORPATH/java/jaxp.jar:$ARBORPATH/java/parser.jar:$CLASSPATH
針對 C 和 Bourne 或 Korn shell,請注意,$JREHOME/bin 必須新增到 LIBPATH 的開頭。
在 Solaris 上,您必須設定 ESS_JVM_OPTION 選項。請注意,JREHOME 必須位在 /usr/bin 之前 PATH 陳述式的開頭位置。
如果您使用 C shell,請將下列文字新增到 .cshrc 檔案中:
setenv ESS_JVM_OPTION1 "-XX: +AllowUserSignalHandlers" setenv JREHOME "${ARBORPATH}/bin/j2rel_3_0" set path=( ${JREHOME}/bin $path) setenv CLASSPATH "${ARBORPATH}/java/jaxp.jar:${ARBORPATH}/java/parser.jar:${CLASSPATH}" setenv LD_LIBRARY_PATH "${JREHOME}/bin:${LD_LIBRARY_PATH}"
如果您使用的是 Bourne 或 Korn shell,請將下列文字新增到 .profile 檔案中:
ESS_JVM_OPTION1=-XX:+AllowUserSignalHandlers export ESS_JVM__OPTION1 JREHOME=$ARBORPATH/bin/j2rel_3_0 export JREHOME PATH=$JREHOME/bin:$PATH export PATH export CLASSPATH=$ARBORPATH/java/jaxp.jar:$ARBORPATH/java/parser.jar:$CLASSPATH export LD_LIBRARY_PATH=$JREHOME/bin:$LD_LIBRARY_PATH
在 HP-UX 上,您必須更新 SHLIB_PATH 設定,以便包含 JREHOME/lib/PA_RISC/ 以及 JREHOME/lib/PA_RISC/classic 目錄。
小心: 目錄 PA_RISC 可能是 PA_RISC2.0,視執行 HP-UX 的電腦所使用的處理器而定。此外,因為 HP-UX 的版次 1.2.2 的 JRE 中的 Just In Time 編譯器仍有問題,所以您也必須設定一個 ESS_JVM_OPTION 選項。
這些環境變數的一部份在撰寫程式碼時,會假設在您的 HP-UX 系統上已經設定這些環境變數,而且它們已將新值新增到您現有的設定中。如果這些變數不存在時,HP-UX 並不會自動建立它們。如果您收到關於環境變數尚未設定的錯誤訊息時,您必須以手動來建立這些變數。請參閱您的 HP-UX 文件,以取得其他關於設定環境變數的資訊。
如果您使用 C shell,請將下列文字新增到 .cshrc 檔案中:
setenv JREHOME "/opt/java1.2/jre" setenv SHLIB_PATH "${JREHOME}/lib/PA_RISC:${JREHOME}/lib/PA_RISC/classic:${SHLIB_PATH}" set path=( $path ${JREHOME}/bin ) setenv ESS_JVM_OPTION1 "-Djava.compiler=NONE" setenv CLASSPATH "${ARBORPATH}/java/jaxp.jar:${ARBORPATH}/java/parser.jar:${CLASSPATH}"
如果您使用的是 Bourne 或 Korn shell,請將下列文字新增到 .profile 檔案中:
JREHOME=/opt/javal.2/jre export JREHOME SHLIB_PATH=$JREHOME/lib/PA_RISC:$JREHOME/lib/PA_RISC/classic:$SHLIB_PATH; export SHLIB_PATH PATH=$PATH:$JREHOME/bin; export PATH ESS_JVM_OPTION1=-Djava.compiler=NONE; export ES_JVM_OPTION1 CLASSPATH=$CLASSPATH:$ARBORPATH/java/jaxp.jar:$ARBORPATH/java/parser.jar; export CLASSPATH
DB2 OLAP Server 會需要 Java API JAXP,才能啟用 Java 型的特性,如自訂定義的巨集和自訂定義的函數。當您安裝 JRE 之後,JAXP 便會安裝到您的系統上。在大部份的情況下,在您安裝 JRE 之後,JRE for DB2 OLAP Server 的安裝和配置便會完成。不過,如果您已安裝 JRE,但是您的伺服器無法偵測到 JAXP 時,請確定下列檔案是否已複製到 JREHOME/lib/ext 中:
/ARBORPATH/java/*.jar
然後再設定 JVMMODULELOCATION,讓 Hyperion Essbase 能尋找並載入 Java。JVMMODULELOCATION 是 essbase.cfg 檔案中的一項設定,可讓您指定 Java Runtime Environment 的特定安裝,以便能搭配 DB2 OLAP Server 來使用。如果您在執行 OLAP Server 元件的機器上,已經安裝多重版本的 Java 時,這項設定便特別有用。
如果要設定 JVMMODULELOCATION 參數,您必須指定 Java Virtual Machine (JVM) 程式庫完整的路徑和檔名。視您正在使用的 JRE 版本和作業系統而定,這項程式庫的名稱和位置會有所不同。
如果要設定 JVMMODULELOCATION:
JVMMODULELOCATION FullpathAndFilenameOfJvmLibraryFile
下列範例中顯示,如何在 DB2 OLAP Server 支援的 UNIX 系統上設定 JVMMODULELOCATION。請勿在路徑和檔名中包含空格。請勿以引號來括住參數。在行的結尾處不需要分號。
在 AIX (JRE 1.2.2) 上:請確定您以大小寫混用來輸入這項設定,如下所示:
JvmModuleLocation /usr/java_dev2/jre/bin/classic/libjvm.a
在 Solaris (JRE 1.3) 上:JVM 程式庫檔案的路徑如下:
/usr/j2se/jre/lib/sparc/client/libjvm.so
在 Solaris 上,請勿將 JVMMODULELOCATION 設成直接指向 libjvm.so 檔。如果您這樣做,當 DB2 OLAP Server 嘗試載入 JVM 時,JVM 便會損毀。應該是,將 JVMMODULELOCATION 設成指向本檔案的符號鏈結。符號鏈結的預設位置如下:
/olaptest/essbase7/bin/j2re1_3_0/lib/sparc/libjvm.so
其中 /olaptest/essbase7/bin 為本範例中的 ARBORPATH。
在 HP-UX (JRE 1.2) 上:請確定您以大小寫混用來輸入這項設定,如下所示:
JvmModuleLocation /opt/javal.2/jre/lib/PA_RISC/classic/libjvm.sl
目錄 PA_RISC 可能是 PA_RISC2.0,視執行 HP-UX 的電腦所使用的處理器而定。
在 UNIX 作業系統上,您必須更新環境變數,以便讓 DB2 OLAP Integration Server 使用 Java Runtime Environment。
在設定下面的環境變數之後,請登出系統,然後再返回並啟動新的設定。在啟動 Essbase 之前,請先執行下列指令,驗證 Java 版本是否正確:
>java_fullversion
針對 DB2 OLAP Integration Server,您將會看到:
也會提供 Script 來設定環境變數,以便符合正確層次的 JRE。下表中顯示各項產品應使用的 Script。
表 15. 符合 JRE for DB2 OLAP Integration Server 層次的環境變數
產品 | Shell | Script |
---|---|---|
DB2 OLAP Integration Server | Korn 或 Bourne | hisjava.sh |
DB2 OLAP Integration Server | CShell | hisjava.csh |
在 AIX 上,您必須更新 LIBPATH 設定,以便包含 JREHOME/bin/ 以及 JREHOME/bin/classic 目錄。這些目錄項目,必須新增到 LIBPATH 環境變數的開頭。
如果您使用的是 Bourne 或 Korn C shell,請從 hisjava.sh 檔來新增下列額外的變數:
export TEMP=/tmp export JAVA_HOME=$ISHOME/jre export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH export LIBPATH=$JAVA_HOME/lib:$LIBPATH
如果您使用 C shell,請從 hisjava.sh 檔來新增下列額外的變數:
setenv TEMP " /tmp" setenv JAVA_HOME "{ARBORPATH}/is" setenv PATH "${JAVA_HOME}/bin:${PATH}" setenv CLASSPATH "${JAVA_HOME}/lib:${CLASSPATH}" setenv LIBPATH "${JAVA_HOME}/lib:${LIBPATH}"
在 Solaris 上,您必須設定 ESS_JVM_OPTION 選項。請注意,JREHOME 必須在 /usr/bin 之前 PATH 陳述式的開頭位置。
如果您使用的是 Bourne 或 Korn C shell,請從 hisjava.sh 檔來新增下列額外的變數:
export TEMP=/tmp export JAVA_HOME $ARBORPATH/is/bin/j2rel_3_0_02 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH export LD_LIBRARY_PATH=$JAVA__HOME/lib:$LD_LIBRARY_PATH export LD_LIBRARY_PATH=$JAVA_HOME/lib:$LD_LIBRARY_PATH
如果您使用 C shell,請從 hisjava.sh 檔來新增下列額外的變數:
setenv TEMP "/tmp" setenv JAVA_HOME "${ARBORPATH}/is" setenv PATH "${JAVA_HOME}/bin:${PATH}" setenv CLASSPATH "${JAVA_HOME}/lib:${CLASSPATH}" setenv LD_LIBRARY_PATH "${JAVA_HOME}/lib:${LD_LIBRARY_PATH}"
在 HP-UX 上,您必須更新 SHLIB_PATH 設定,以便包含 JREHOME/lib/PA_RISC/ 以及 JREHOME/lib/PA_RISC/classic 目錄。
小心: 目錄 PA_RISC 可能是 PA_RISC2.0,視執行 HP-UX 的電腦所使用的處理器而定。此外,因為 HP-UX 的版次 1.2.2 的 JRE 中的 Just In Time 編譯器仍有問題,所以您也必須設定一個 ESS_JVM_OPTION 選項。
這些環境變數的一部份在撰寫程式碼時,會假設在您的 HP-UX 系統上已經設定這些環境變數,而且它們已將新值新增到您現有的設定中。如果這些變數不存在時,HP-UX 並不會自動建立它們。如果您收到關於環境變數尚未設定的錯誤訊息時,您必須以手動來建立這些變數。請參閱您的 HP-UX 文件,以取得其他關於設定環境變數的資訊。
如果您使用的是 Bourne 或 Korn C shell,請從 hisjava.sh 檔來新增下列額外的變數:
export TEMP =/tmp export JAVA_HOME=/opt/javal.3/jre export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/lib:$CLASSPATH export SHLIB_PATH=$JAVA_HOME/lib$SHLIB_PATH
如果您使用的是 C shell,請從 hisjava.sh 檔來新增下列額外的變數:
setenv TEMP " /tmp" setenv JAVA_HOME "${ARBORPATH}/is" setenv PATH "${JAVA_HOME}/bin:${PATH}" setenv CLASSPATH "${JAVA_HOME}/lib:${CLASSPATH}" setenv SHLIB_PATH "${JAVA_HOME}/lib:${ISHOME}/esslib:${ISHOME}/islib;${SHLIB_PATH}"
如果要尋找目前在您 UNIX 系統上執行中的 Shell,請執行下列指令:
> echo $SHELL
下列清單說明各種您可能會收到的回應,視您正在使用的 Shell 種類而定:
另一種可以找出您目前正在使用的是哪一項 Shell 的方式,是檢查 etc/password 檔案。您可以利用執行 cat 指令來查看此項目。例如:
cat /etc/passwd