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

Red Hat Enterprise Linux 5 安裝 Oracle 9i Enterprise 完整實戰筆記 (含補丁、依賴包、參數調優)

     編輯:Oracle 資料庫基礎

環境與版本

  • OS:Red Hat Enterprise Linux 5 (RHEL5) x86
  • DB:Oracle 9i Release 2 (9.2.0.4.0)
  • 安裝用戶:oracle / 群組:oinstall (主)、dba (次)
  • 目標目錄:/opt/app/oracle/9.2.0 (ORACLE_BASE=/opt/app/oracle)

前置作業:用戶、目錄、核心參數、限制、環境變數

1. 建立用戶與群組

su -
groupadd oinstall
groupadd dba
useradd -g oinstall -G dba oracle
passwd oracle

2. 建立目錄並授權

mkdir -p /opt/app/oracle/9.2.0
chown -R oracle:oinstall /opt/app/oracle

3. 核心參數 (永久生效寫入 /etc/sysctl.conf)

kernel.shmmax = 536870912          # 物理記憶體 1GB 取一半,單位 bytes
kernel.shmmni = 4096
kernel.shmall = 2097152            # 總共享頁數 (shmmax/PAGE_SIZE)
kernel.sem = 250 32000 100 128     # SEMMSL SEMMNS SEMOPM SEMMNI
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000

立即生效:sysctl -p 或 echo ... > /proc/sys/kernel/... 臨時調整。

4. 用戶資源限制 (/etc/security/limits.conf)

oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384

5. 環境變數 (~oracle/.bash_profile)

export ORACLE_SID=zhang
export ORACLE_BASE=/opt/app/oracle
export ORACLE_HOME=/opt/app/oracle/9.2.0
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib:/usr/X11R6/lib
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
export ORACLE_OWNER=oracle
export ORACLE_TERM=xterm
export PATH=/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:$ORACLE_HOME/bin

關鍵補丁與依賴包 (安裝前必裝)

類別套件/補丁來源/用途
Oracle 官方補丁p3006854_9204_Linux.zip**安裝前預裝補丁** (修正安裝程式相容性)
p3238244_9204_Linux.zip安裝後補丁 (修復 Agent 錯誤)
p2617419_210_GENERIC.zip伴隨補丁 (需設環境變數)
系統相容套件compat-libcwait-2.1-1.i386.rpmRHEL4 相容庫,**安裝前必裝**
compat-oracle-rhel4-1.0-5.i386.rpmRHEL4 相容庫 (可選,筆者未裝也成功)
基礎依賴 RPM (RHEL5 光碟/網路)compat-db-4.2.52-5.1.i386.rpm舊版 Berkeley DB
libXp-1.0.0-8.i386.rpm + -develX Print 庫 (安裝程式圖形介面需求)
openmotif-2.3.0-0.3.el5.i386.rpm + -develMotif 圖形工具包
gnome-libs-1.4.2-7.rhel5.i386.rpm 及依賴鏈GNOME 1 庫 (安裝程式需求),含 giflib, glib, libpng10, ORBit, gtk+, imlib
以上 RPM 可從 https://ox0spy.googlepages.com/download.zip 打包下載
符號連結ln -s /usr/lib/libstdc++-libc6.2-2.so.3 /usr/lib/libstdc++-libc6.1-1.so.2解決安裝程式找舊版 libstdc++ 問題

安裝流程

  1. 下載 Oracle 9i (3 張 CD) → zcat ship_9204_Linux_disk*.cpio.gz | cpio -idmv 解壓
  2. **重啟 X Window**,以 oracle 用戶登入圖形介面 (否則 xhost +/DISPLAY 問題)
  3. cd Disk1; ./runInstaller → 圖形介面按預設/提示操作
    • Inventory Group: oinstall
    • Global Database Name: ox0spy.org (自訂)
    • 過程中兩次提示執行 root.sh 腳本,切換 root 執行
  4. 進入 Configuration Tools 階段常報錯,**勿慌**,套用後續補丁

Configuration Tools 失敗修復 (關鍵步驟)

1. 修復 Agent Configuration Assistant

unzip p3238244_9204_Linux.zip
cp 3238244/files/lib/stubs/* $ORACLE_HOME/lib/stubs/
cd $ORACLE_HOME/network/lib
make -f ins_oemagent.mk install

2. 修復 Oracle Net / Database Configuration Assistant (JRE 版本問題)

rm $ORACLE_HOME/JRE
ln -s $ORACLE_BASE/jre/1.3.1 $ORACLE_HOME/JRE
ln -s $ORACLE_HOME/JRE/bin/java $ORACLE_HOME/JRE/bin/jre
ln -s $ORACLE_HOME/JRE/bin/i386/native_threads/java $ORACLE_HOME/JRE/bin/i386/native_threads/jre

點擊 Retry → 所有 Configuration Tools 應通過。

常見錯誤與解決方案速查 (Tips 區彙總)

錯誤現象解決方案
error while loading shared libraries: libstdc++-libc6.1-1.so.2ln -s /usr/lib/libstdc++-3-libc6.2-2-2.10.0.so /usr/lib/libstdc++-libc6.1-1.so.2
Exception: libXp.so.6 not found安裝 libXp, libXp-devel, libXpm, libXpm-devel
Can't connect to X11 window server: DISPLAY以 oracle 登入 X 或 root 執行 xhost +
Fatal: Stack size too small再執行一次 runInstaller (第二次通常通過)
dbca 無法啟動: libzip.so symbol errno not found同 JRE 修復:指向 1.3.1 並建立 jre 符號連結
安裝末期 parameter "orahome"... 失敗套用 p3238244 補丁並重新編譯 Agent (make -f ins_oemagent.mk install)
apachectl startssl 失敗: libdb.so.2 not found安裝 gnome-libs 及完整依賴鏈

自動化腳本 (筆者提供三支)

  • beforeInstallOracle.sh:核心參數、限制、目錄、基礎 RPM、符號連結
  • patch_before_install.sh:套用 p3006854 預裝補丁、compat-libcwait
  • patch_configuration_tools.sh:套用 p3238244、切換 JRE、重編 Agent

目錄結構:

D:\PATCH
├── beforeInstallOracle.sh
├── p3006854_9204_Linux.zip
├── p3238244_9204_Linux.zip
├── patch_configuration_tools.sh
├── compat-libcwait-2.1-1.i386.rpm
├── patch_before_install.sh
└── rpm\
    ├── libXp-1.0.0-8.i386.rpm
    ├── openmotif-2.3.0-0.3.el5.i386.rpm
    ├── compat-db-4.2.52-5.1.i386.rpm
    ├── libXp-devel-1.0.0-8.i386.rpm
    ├── compat-gcc-34-c++-3.4.6-4.i386.rpm
    ├── openmotif-devel-2.3.0-0.3.el5.i386.rpm
    ├── compat-gcc-34-3.4.6-4.i386.rpm
    ├── libXpm-3.5.5-3.i386.rpm
    ├── compat-libgcc-296-2.96-138.i386.rpm
    ├── libXpm-devel-3.5.5-3.i386.rpm
    └── download\
        ├── gnome-libs-1.4.2-7.rhel5.i386.rpm
        ├── ORBit-0.5.17-22.rhel5.i386.rpm
        ├── libpng10-1.0.18-2.i386.rpm
        ├── gtk+-1.2.10-57.fc7.i386.rpm
        ├── gnome-libs-devel-1.4.2-7.rhel5.i386.rpm
        ├── glib-1.2.10-26.fc7.i386.rpm
        ├── imlib-1.9.15-2.fc7.i386.rpm
        ├── giflib-4.1.3-8.i386.rpm
        └── rpmdb-redhat-4-0.20071031.src.rpm

重要提醒

  1. **Oracle 9i / RHEL 5 均已終止支援**,生產環境請遷移至 Oracle 19c/21c/23c + Oracle Linux 8/9 或 RHEL 8/9。
  2. 現代部署建議:使用 yum/dnf 安裝 oracle-database-preinstall-19c 自動完成核心參數、套件、用戶建立。
  3. 容器化部署 (docker pull container-registry.oracle.com/database/enterprise:19.3.0.0) 可完全規避 OS 相容性問題。
  4. 本文僅供歷史環境維護或教學參考。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved