首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> Oracle 資料庫 >> Oracle 資料庫基礎

RedHat 7.1 安裝 Oracle 8.1.7.0.1 完整步驟與補丁修正指南

     編輯:Oracle 資料庫基礎

安裝環境與版本資訊

  • OS:RedHat Linux 7.1 (Kernel 2.4.x,glibc 2.1.x)
  • Database:Oracle 8.1.7.0.1 (32-bit)
  • JDK:IBM Java 1.1.8 (Oracle 8i 安裝程式需求)
  • 關鍵相容性套件:compat-glibc、compat-libs、compat-egcs (提供 glibc 2.1 相容層)

背景:RedHat 7.1 預設 glibc 2.2,Oracle 8.1.7 需 glibc 2.1 相容庫。必須安裝相容套件並設定編譯環境變數,否則安裝失敗或運行時核心傾印。

所需軟體套件清單

Oracle81701.tar                    # Oracle 安裝檔
compat-glibc-6.2-2.1.3.2.i386.rpm  # glibc 2.1 相容庫
compat-libs-6.2-3.i386.rpm         # 相容 C++ 庫
compat-egcs-6.2-1.1.2.14.i386.rpm  # egcs/gcc 2.91.66 相容編譯器
IBMJava118-SD.-1.1.8-5.0.i386.rpm  # IBM JDK 1.1.8
setup_group.sh                     # 建立用戶/群組/目錄腳本
env_ctx.mk                         # ctx 編譯修正檔
root.sh                            # root 後配置腳本
glibc-2.1.3-stubs.tar.gz           # Oracle 官方 glibc 2.1.3 stub 補丁

詳細安裝步驟

階段 0:Root 安裝相容性 RPM 套件

# 掛載 RedHat 7.1 光碟 Disc 1/2,尋找並按順序安裝
rpm -ivh compat-glibc-6.2-2.1.3.2.i386.rpm
rpm -ivh compat-libs-6.2-3.i386.rpm
rpm -ivh compat-egcs-6.2-1.1.2.14.i386.rpm

階段 1:建立 Oracle 目錄結構

mkdir /ora8
# 稍後 setup_group.sh 會在下面建立 m01/m02/m03/oradata/ora8

階段 2:安裝 IBM JDK 1.1.8

rpm -ivh IBMJava118-SD.-1.1.8-5.0.i386.rpm
# 預設安裝至 /usr/jdk118

階段 3:配置 Java 環境變數

vi /etc/profile
# 追加:
JAVA_HOME=/usr/jdk118
export JAVA_HOME
CLASSPATH=/usr/jdk118/lib
export CLASSPATH
PATH=$PATH:/usr/jdk118/bin
export PATH

階段 4:執行 setup_group.sh 建立用戶與目錄

./setup_group.sh
# 腳本內容:
#!/bin/sh
groupadd dba
groupadd oinstall
groupadd oracle
useradd -g dba -G oinstall,oracle -m oracle
echo "Enter the passWord you want to use for user oracle"
passwd oracle
cd /ora8
mkdir -p m01 m02 m03/oradata/ora8
chown -R oracle.dba /ora8
echo "Now download the jazzed-up bash_profile file to /home/oracle/.bash_profile"
echo "cd /home/oracle and chown oracle.dba .bash_profile"
echo "su - oracle"
echo "You should be all set to cd /Disk1 and ./runInstaller"
exit 0

階段 5:配置 Oracle 用戶 .bash_profile

vi /home/oracle/.bash_profile
# 內容:
. /etc/shell-mods.sh
PATH=$PATH:$HOME/bin:/usr/jdk118/bin
NLS_LANG=american_america.zhs16cgb231280; export NLS_LANG
. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh

# 修正權限
chown oracle.dba /home/oracle/.bash_profile
chmod 775 /home/oracle/.bash_profile

階段 6:部署 shell-mods.sh 至 /etc

cp shell-mods.sh /etc
# shell-mods.sh 關鍵內容:
#!/bin/bash
unset LANG
# 透明 glibc 2.1.x 相容建置環境
. /usr/i386-glibc21-linux/bin/i386-glibc21-linux-env.sh
export LD_ASSUME_KERNEL=2.2.5
export LDEMULATION=elf_i386_glibc21
export GCC_EXEC_PREFIX=/usr/i386-glibc21-linux/lib/gcc-lib/
export ORACLE_BASE=/ora8/m01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/8.1.7
export PATH=$PATH:$ORACLE_HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export ORACLE_SID=ora8
export ORACLE_TERM=vt100
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
umask 022

階段 7:解壓 Oracle 安裝檔

tar -xvf Oracle81701.tar
# 產生 Disk1 目錄

階段 8:切換 oracle 用戶執行安裝程式

su - oracle
cd Disk1
./runInstaller

階段 9:安裝程式關鍵選項

  • Unix Group Name: oinstall
  • Install Type: Custom(典型安裝不含中文字元集)
  • Product Languages: 勾選 Simplified Chinese
  • JDK Home: /usr/jdk118
  • 不建立資料庫(稍後打補丁再建)

階段 10:安裝過程中 Root 執行腳本

  1. 彈出視窗要求執行 /home/oracle/orainstRoot.sh → 開新終端 su - root → 執行 → 保持視窗開啟
  2. 後續要求執行 root.sh → 同一 root 視窗:
    cp root.sh $ORACLE_HOME
    cd $ORACLE_HOME
    ./root.sh

階段 11:解決 98% 處 env_ctx.mk 複製失敗問題

# 錯誤:ins_ctx.mk 無法複製
# 解決:複製修正檔到 ctx/lib 後重試
cp env_ctx.mk $ORACLE_HOME/ctx/lib
# 點擊安裝程式 Retry 按鈕

階段 12:安裝 Oracle 官方 glibc 2.1.3 Stub 補丁

cp glibc-2.1.3-stubs.tar.gz $ORACLE_HOME
cd $ORACLE_HOME
tar -zxvf glibc-2.1.3-stubs.tar.gz
./setup_stubs.sh
# 補丁完成後重啟系統

階段 13:建立資料庫

su - oracle
dbassist  # 啟動 DBCA 圖形介面建庫

關鍵環境變數說明表

常見問題與解決

變數值用途
LD_ASSUME_KERNEL2.2.5強制動態連結器使用舊版 glibc 行為
LDEMULATIONelf_i386_glibc21連結器模擬模式,優先搜尋相容庫
GCC_EXEC_PREFIX/usr/i386-glibc21-linux/lib/gcc-lib/指定 gcc 使用相容編譯器
ORACLE_BASE/ora8/m01/app/oracleOFA 架構基礎目錄
ORACLE_HOME$ORACLE_BASE/product/8.1.7軟體安裝目錄
NLS_LANGamerican_america.zhs16cgb231280簡體中文環境(繁體用 zht16big5)

總結

RedHat 7.1 上安裝 Oracle 8.1.7 核心挑戰在於 glibc 版本不匹配。解決路徑:系統層安裝 compat 套件 → 用戶層設定 LD_ASSUME_KERNEL/GCC_EXEC_PREFIX → 安裝過程修正 env_ctx.mk → 安裝後打官方 stub 補丁。此版本已停止支援,僅供舊系統維護參考。新部署請使用 Oracle 19c/21c + Oracle Linux 8/9。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
問題原因解決
安裝程式啟動即閃退JDK 版本不符或未設 JAVA_HOME確認 IBM JDK 1.1.8、環境變數正確
編譯錯誤:glibc 版本不符未安裝 compat 套件或未設 LD_ASSUME_KERNEL安裝 3 個 compat RPM、shell-mods.sh 生效
中文亂碼/無法顯示安裝未選 Simplified Chinese、NLS_LANG 錯誤Custom 安裝選中文、NLS_LANG=american_america.zhs16cgb231280
ctx 編譯失敗env_ctx.mk 未複製到 ctx/libcp env_ctx.mk $ORACLE_HOME/ctx/lib → Retry
運行時核心傾印glibc 2.1.3 stub 補丁未裝安裝 glibc-2.1.3-stubs.tar.gz 補丁