以 root 身份執行以下命令:
?# 設置臨時交換分區(當交換空間不足時用, 建議重新分區更佳)
?# 設置為 1G, 請根據實際需要設置
?#dd if=/dev/zero of=/tempswap bs=1k count=1048576
?#chmod 600 /tempswap
?#mkswap /tempswap
?#swapon /tempswap
?# 得到一個 1G 的臨時緩沖區
?# 設置共享內存
?# 這里設置為 4G, 請根據實際情況設置
?# 建議永久增加共享內存最大值, 如下操作:
?echo '
# Set this for Oracle9i
kernel.shmmax = 4294967295' >> /etc/sysctl.conf
?# 上面的設置要重啟動機器才會生效, 所以還要這樣設置一下
?expr 1024 \* 1024 \* 1024 \* 4 - 1 > /proc/sys/kernel/shmmax
?# 最大共享內存被設置為 4G
?# 創建 Oracle 用戶和組
?# 擁有 SYSDBA 權限的用戶組
?groupadd dba
?# Oracle 系統的文件屬主組
?groupadd oinstall
?useradd -c "Oracle software owner" -g oinstall -G dba oracle
?passwd oracle
?# 得到 dba 和 oinstall 兩個組, 用戶 oracle 屬于 oinstall 組, 且具有 dba 組屬性
?# 創建 Oracle 相關目錄
?mkdir /home/oracle/product
?mkdir /home/oracle/product/9.2.0.4.0
?chown -R oracle.oinstall /home/oracle/product
?mkdir /var/oracle
?chown -R oracle.dba /var/oracle
?chmod -R 755 /var/oracle
?# 得到 /home/oracle/9.2.0.4.0 目錄, 用來存放安裝后的系統文件
?# 得到 /var/oracle 目錄, 用來存放數據文件
--------------------------------------------------------------
以 oracle 用戶身份登錄,將以下命令加到 ~/.bash_profile 末尾:
?# 僅在啟用了 New Posix Thread Library 的系統上需要(如 RH9)
?export LD_ASSUME_KERNEL=2.4.1
?# Oracle 環境變量
?export ORACLE_BASE=/home/oracle
?export ORACLE_HOME=/home/oracle/product/9.2.0.4.0
?# ORACLE_SID 根據實際情況自行設置
?export ORACLE_SID=rubia
?export ORACLE_TERM=xterm
?export NLS_LANG=american_america.ZHS16GBK
?export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
?export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib
?export PATH=$PATH:$ORACLE_HOME/bin
?umask 022
?export LANG="en_US"
?CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
?CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
?export CLASSPATH
然后重新登錄,以使設置生效。
執行以下命令解開下載的 Oracle9i
?# 解開下載的 oracle
?zcat Linux9i_Disk1.cpio.gz | cpio -idmv
?zcat Linux9i_Disk2.cpio.gz | cpio -idmv
?zcat Linux9i_Disk3.cpio.gz | cpio -idmv
?# 應該得到 Disk1, Disk2, Disk3 三個目錄, 內含安裝文件
運行 Disk1/runInstaller,按提示進行即可。
注意:將 Oracle 數據安裝到 /var/oracle。這是唯一改變默認項的地方。
最后還要復制一個文件(TNND,一定是ORACLE的BUG):
?$ORACLE_BASE/admin/rubia/pfile/initrubia.ora.xxxxxxxxxxx?? # 最后的 x 是一串奇怪的的數字。
把它復制到:
?$ORACLE_HOME/dbs/initrubia.ora
現在安裝完畢。為了使用 dbstart 和 dbshut ,以 root 身份修改文件: /etc/oratab
找到這樣的行: rubia:/home/oracle/product/9.2.0.4.0:N
將行尾的 N 改為 Y
切換回 oracle 身份(不要用 root 啊,否則會有無窮無盡的麻煩),運行 $ORACLE_HOME/bin/dbstart
現在可以連接一下試試看了。