| 項目 | 建議值 |
|---|---|
| 主機名 | dbserver |
| IP 規劃 | 192.168.8.15/24,GW 192.168.8.1,DNS 202.96.134.133 / 8.8.8.8 |
| 磁碟分區(LVM) | /boot 200M、/ 5G、/home 5G、swap 2G、/var 10G、/u01 剩餘空間 |
| Swap 原則 | 物理記憶體 <4G → 1.5倍;≥4G → 等同記憶體,上限 8G |
| 安裝選項 | Basic Server → 自定義:去除 Java、加入 Emacs/網路工具、桌面組件(除 KDE) |
# 記憶體
grep MemTotal /proc/meminfo
free -m
# Swap
swapon -s
# /tmp 空間
df -h /tmp
# 磁碟整體
df -h
# 核心版本
uname -r
# 2.6.32-358.el6.x86_64 符合要求
# 發行版
lsb_release -a
vi /etc/redhat-release
# 原內容註釋,新增:
Red Hat Enterprise Linux 6
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmax = 4294967295
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
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
sysctl -p
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft stack 10240
oracle hard stack 32768
yum -y update
reboot
yum -y install \
binutils \
compat-libcap1 \
compat-libstdc++-33 \
compat-libstdc++-33.i686 \
gcc \
gcc-c++ \
glibc \
glibc.i686 \
glibc-devel \
glibc-devel.i686 \
ksh \
libgcc \
libgcc.i686 \
libstdc++ \
libstdc++.i686 \
libstdc++-devel \
libstdc++-devel.i686 \
libaio \
libaio.i686 \
libaio-devel \
libaio-devel.i686 \
make \
sysstat \
unixODBC \
unixODBC.i686 \
unixODBC-devel \
unixODBC-devel.i686 \
elfutils-libelf-devel \
libXp
注意: pdksh 在 CentOS 6 預設源無,需手動下載 RPM 安裝:
wget https://example.com/pdksh-5.2.14-37.el5_8.1.x86_64.rpm
rpm -ivh pdksh-5.2.14-37.el5_8.1.x86_64.rpm
# SELinux
vim /etc/sysconfig/selinux
SELINUX=disabled
setenforce 0
# 防火牆
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off
# 非必要服務
for s in cups postfix bluetooth; do
service $s stop
chkconfig $s off
done
groupadd oinstall
groupadd dba
groupadd oper
useradd -g oinstall -G dba,oper oracle
echo "oracle" | passwd --stdin oracle # 建議後續修改強密碼
# 目錄
mkdir -p /u01/app/oracle/product/11.2.0/db_1
mkdir -p /u01/oradata
chown -R oracle:oinstall /u01
chmod -R 775 /u01
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1
export ORACLE_SID=orcl
export PATH=$ORACLE_HOME/bin:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
使用 runInstaller -silent -responseFile /path/to/db_install.rsp 實現無人值守安裝,適合批量部署。
Oracle 11g R2 在 CentOS 6.4 上的環境準備核心在於:核心參數、套件依賴、用戶限制、目錄權限、SELinux/防火牆關閉、系統身份偽裝。逐項核對上述清單,並在安裝前執行 runcluvfy.sh stage -pre dbinst(Cluster Verification Utility)進行預檢,可將安裝失敗率降至最低。