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

RedHat Enterprise Linux 5 安裝 Oracle 10g R2 64位企業版完整實戰手冊

     編輯:Oracle 資料庫基礎

安裝環境與版本資訊

  • OS:RedHat Enterprise Linux 5 (x86_64)
  • Oracle:10g Release 2 (10.2.0.1) 64-bit Enterprise Edition
  • 安裝介質:10201_database_linux_x86_64.cpio.gz

第一階段:作業系統前置準備

1. 解壓 Oracle 安裝介質

gunzip 10201_database_linux_x86_64.cpio.gz
cpio -idmv < 10201_database_linux_x86_64.cpio

2. JDK 配置

安裝前先配置好 JDK 環境變數 (JAVA_HOME, PATH),安裝程式需 JRE 支援圖形介面。

3. 系統套件檢查與安裝

# 查詢必要套件
rpm -q gcc make binutils openmotif setarch libXp

# 缺失套件從 RHEL 5 安裝光碟安裝
# 掛載光碟 → 搜尋 *.rpm → 安裝缺失項 + 所有 compat-* 開頭套件
# 注意:libXp **必須安裝**,光碟無則上網下載

4. 交換分區配置 (Swap)

原則:Swap ≥ 物理記憶體

  • < 2GB RAM:Swap = 2× RAM
  • 2~4GB RAM:Swap = 1~2× RAM
  • > 4GB RAM:Swap = 1× RAM 或參考 Oracle 文件

範例:3GB RAM,現有 2GB Swap → 需再增 2GB

# 檢查現狀
grep MemTotal /proc/meminfo
grep SwapTotal /proc/meminfo

# 建立 2GB Swap 檔案 (於 /usr)
cd /usr
dd if=/dev/zero of=swap bs=1024 count=2097152  # 1024*2048=2G
/sbin/mkswap swap
/sbin/swapon swap
/sbin/swapon -s  # 驗證

# 寫入 /etc/fstab 開機自動掛載
/usr/swap swap swap defaults 0 0

5. 核心參數調優

# /etc/sysctl.conf 末尾新增
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144

# 套用
sysctl -p

6. 使用者限制配置

# /etc/security/limits.conf 末尾新增
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 65536

# /etc/pam.d/login 末尾新增
session required pam_limits.so

7. 關閉 SELinux

# /etc/selinux/config
SELINUX=disabled
# 修改後需重啟生效

8. 繞過 RHEL 5 版本檢查

Oracle 10g 安裝程式不支援 RHEL 5 識別,臨時修改版本檔:

# /etc/redhat-release
# 原內容註解,新增:
Red Hat Enterprise Linux AS release 4 (Nahant Update 4)
# 安裝完成後**必須改回**原內容

第二階段:Oracle 使用者與目錄建立

# 建立群組
groupadd oinstall
groupadd dba

# 建立 oracle 使用者
useradd -m -g oinstall -G dba oracle
passwd oracle  # 設定密碼

# 建立目錄結構
mkdir -p /u01/app/oracle          # 軟體安裝目錄 (建議獨立分區/磁碟)
mkdir -p /u02/oradata             # 資料檔目錄 (建議獨立分區/磁碟)

# 設定權限
chown -R oracle:oinstall /u01
chown -R oracle:oinstall /u01/app/oracle /u02/oradata
chmod -R 775 /u01/app/oracle /u02/oradata

第三階段:Oracle 使用者環境變數配置

必須以 oracle 使用者圖形介面登入** (非 su/sudo 切換),配置 ~/.bash_profile:

# 語言編碼 (避免安裝介面亂碼)
export LC_CTYPE=zh_CN.GB2312-80

# 核心環境變數
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_HOME_LISTNER=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=oracle
export PATH=$HOME/bin:$ORACLE_HOME/bin:$PATH

export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export ORA_NLS10=$ORACLE_HOME/nls/data
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/oracm/lib:/lib:/usr/lib:/usr/local/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export THREADS_FLAG=native
export TEMP=/app/tmp
export TMPDIR=/app/tmp
export LANG=zh_CN.UTF-8
unset USERNAME
umask 022

第四階段:圖形安裝精確步驟

# 切換至 oracle 使用者
cd /opt/database
export DISPLAY=:0.0
./runInstaller

安裝精靈關鍵選項

  1. 安裝類型:進階安裝
  2. Inventory 目錄:/u01/app/oracle/oraInventory
  3. 資料庫版本/語言:企業版 / English + 簡體中文
  4. Oracle Home:/u01/app/oracle/product/10.2.0/db_1
  5. 產品特定先決條件檢查:網路檢查需手工確認繼續
  6. 配置選項:建立資料庫
  7. 資料庫範本:一般用途
  8. 資料庫識別:SID=oracle (建議用預設),字符集=Unicode (AL32UTF8)
  9. 管理選項:Database Control (預設)
  10. 儲存位置:/u02/oradata
  11. 備份恢復:不啟用自動備份 (簡化安裝)
  12. 密碼管理:所有管理帳號使用相同密碼
  13. 安裝摘要確認 → 安裝 (約 30-60 分鐘)

關鍵:root 執行後置腳本

安裝結束彈出視窗,**必須以 root 執行**列出的 2-3 個腳本 (root.sh 等),否則安裝不完整。

第五階段:安裝後配置與服務管理

1. 恢復系統版本檔

# /etc/redhat-release 改回
Red Hat Enterprise Linux Server release 5 (Tikanga)

2. 配置自動啟動腳本

# 修改 /etc/oratab
oracle:/u01/app/oracle/product/10.2.0/db_1:Y  # Y=開機自動啟動

# 修改 $ORACLE_HOME/bin/dbstart
# 註解 ORACLE_HOME_LISTNER=... 行,新增:
ORACLE_HOME_LISTNER=$ORACLE_HOME

# 建立 /etc/rc.d/init.d/oracle 啟動腳本
#!/bin/bash
# chkconfig: 35 95 1
# description: Oracle 10g auto start/stop
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1
export ORACLE_SID=oracle
export ORACLE_USER=oracle
export PATH=$ORACLE_HOME/bin:$PATH

case "$1" in
start)
  su - $ORACLE_USER -c "lsnrctl start"
  su - $ORACLE_USER -c "sqlplus /nolog <

3. 註冊服務與測試

chown root:root /etc/rc.d/init.d/oracle
chmod 755 /etc/rc.d/init.d/oracle
chkconfig --add oracle
chkconfig oracle on

# 測試
service oracle start
service oracle stop

# 注意:腳本換行符必須為 Unix 格式 (LF),否則報 "unexpected end of file"
# 用 vi 開啟 :set ff=unix 或 dos2unix 轉換

第六階段:卸載清理程序

# 1. 停止資料庫
sqlplus /nolog
connect / as sysdba
shutdown immediate
exit

# 2. 停止監聽器
lsnrctl stop

# 3. 停止 HTTP 服務 (如有)
$ORACLE_HOME/Apache/Apache/bin/apachectl stop

# 4. Root 執行清理
$ORACLE_HOME/bin/localconfig delete
rm -rf $ORACLE_BASE/*
rm -f /etc/oraInst.loc /etc/oratab
rm -rf /etc/oracle
rm -f /etc/inittab.cssd
rm -f /usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenv

# 5. 刪除使用者/群組
userdel -r oracle
groupdel oinstall
groupdel dba

# 6. 移除啟動服務
chkconfig --del oracle

關鍵避坑總結

坑點解決方案
libXp 缺失光碟無則上網下載 rpm 強制安裝
Swap 不足建立 Swap 檔案並寫入 fstab
RHEL 5 版本檢查失敗臨時修改 /etc/redhat-release 偽裝為 AS 4
安裝介面亂碼export LC_CTYPE=zh_CN.GB2312-80
root.sh 未執行安裝結束視窗**必須**以 root 執行
啟動腳本換行符錯誤vi 設定 :set ff=unix 或用 dos2unix
安裝後未恢復 redhat-release務必改回,否則 yum/系統更新異常

此手冊經實測驗證,涵蓋從 OS 前置到安裝後服務化全流程,適合生產環境標準化部署參考。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved