| 項目 | 最低 | 推薦 |
|---|---|---|
| CPU | x86_64 2 核 | 8 核+、支援 AVX2 |
| 內存 | 2 GB | 16 GB+(SGA+PGA 預留) |
| 磁盤 | 10 GB | SSD/NVMe 500 GB+、ASM 磁盤組 |
| OS | Oracle Linux 7/8, RHEL 7/8, Windows Server 2016/2019/2022 | 同左,內核參數預調優 |
| Swap | 1.5×RAM (RAM<2GB) / 1×RAM (2-16GB) / 0.75×RAM (>16GB) | 同上 |
癥狀:安裝程式啟動即掛起/閃退/無反應;已安裝實例啟動工具報「非法操作」。
根因:OUI 1.7/1.8 內嵌 Sun JRE 1.1.8 + Symantec JIT (symcjit.dll) 與 Pentium 4 SSE2 指令集不兼容。
通用修復腳本(適用 8.1.7/9.0/9.2):
# 1. 解壓安裝介質到本地目錄 /stage
# 2. 替換 JRE
find /stage -name symcjit.dll -exec mv {} {}.old \;
# 3. 修改 oraparam.ini
sed -i 's/JRE_MEMORY_OPTIONS=.*/JRE_MEMORY_OPTIONS=-nojit -ms16m -mx32m/' /stage/install/oraparam.ini
# 4. 修改所有 *.cl 啟動腳本
find /stage -name "*.cl" -exec sed -i 's/\(".*jrew"\)/\1 -nojit/' {} \;
# 5. 以自定義模式安裝,不建庫
/stage/install/runInstaller -noconfig
# 6. 安裝後手動 DBCA/NETCA 建庫配置
現代建議:P4 級硬體直接上 19c/21c,舊版本僅限極端遷移場景,建議虛擬機隔離運行。
oracle_install,加入 Administrators、ORA_DBA 組,登入安裝。D:\app\oracle,非 C:\Program Files\Oracle。127.0.0.1 hostname,避免 DNS 解析延遲導致 OUI 掛起。OPatch apply 最新補丁包。
# 1. 內核參數 /etc/sysctl.conf
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
kernel.shmmax = 4398046511104
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
# sysctl -p
# 2. 用戶限制 /etc/security/limits.conf
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
# 3. 必裝包 (Oracle Linux 8 / RHEL 8)
dnf install -y oracle-database-preinstall-19c # 一鍵搞定上述所有
services.msc;Linux: systemctl stop oracle-*)。runInstaller -deinstall (12c+) 或 setup.exe -deinstall。HKLM\SOFTWARE\Oracle、HKLM\SYSTEM\CurrentControlSet\Services\Oracle*、EventLog\Application\Oracle*ORACLE_BASE、ORACLE_HOME、C:\Program Files\Oracle、/etc/oratab、/opt/ORCLfmap。sc delete OracleServiceXXX / systemctl disable oracle-XXX。/tmp/.oracle*、%TEMP%\oracle*。/var/log/messages 中 Oracle 相關。ps -ef | grep -i oracle、lsnrctl status 均無殘留。/u01/app/oracle/product/19.0.0/dbhome_1 vs 12.2.0.1。/u01/app/oracle 存放 diag、admin、cfgtoollogs、oradata(可選)。
# .oraenv_19c
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1
export ORACLE_SID=orcl19
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
SID_LIST_LISTENER 註冊多 SID。| 錯誤 | 原因 | 解決 |
|---|---|---|
| INS-32026 | 中央庫存目錄權限/鎖 | 以 root 運行 runInstaller -detachHome 清理 |
| PRVF-0002 | OS 套件缺失 | 安裝 oracle-database-preinstall-19c 或手動補包 |
| ORA-01034 | 實例未啟動 | 檢查 ORACLE_SID、SPFILE、alert log |
| TNS-12560 | 監聽器/網路 | lsnrctl start、防火牆、hosts、tnsnames.ora |
| OUI-10030 | 臨時空間不足 | 設置 TEMP=/big/tmp 指向大分區 |
安裝卸載看似基礎,實則關繫整個生命週期的穩定性。**標準化、腳本化、文檔化、演練化** 是從「能裝上」進階到「裝得穩、拆得乾淨」的必經之路。