Oracle公司宣稱在Linux下安裝Oracle9i資料庫至少要有512MB的記憶體和至少1GB或者兩倍記憶體大小的交換空間,對於系統記憶體大於2GB的伺服器,交換空間可以介於2GB—4GB之間。
如果是為了在一台僅有256M記憶體的普通PC機上試用Oracle9i,在分配了1GB左右的交換空間的情況下,也可以正常運行Oracle資料庫。
要檢查記憶體空間,登入進入Linux,在命令列方式(bash環境)下執行如下命令:grep MemTotal /proc/meminfo
要檢查交換空間,在命令列下執行如下命令:grep SwapTotal /proc/meminfo
1.解壓.cpio檔案
#cpio -idvm < lnx_920_disk1.cpio #cpio -idvm < lnx_920_disk2.cpio #cpio -idvm < lnx_920_disk3.cpio |
在目前的目錄下產生Disk1和Disk2,Disk3三個目錄。
2.打補丁
unzip oraclerpm.zip #rpm -ivh *.i586.rpm --nodeps --force |
3.建立使用者和組
#groupadd dba #mkdir /opt/OracleHome #adduser -u 499 -d /opt/OracleHome/ -g dba oracle |
注:-u 後可以是1-500(系統使用者) -g 添加到私人組dba中 #chown oracle.dba /opt/OracleHome/
#mkdir /opt/OracleHome/Ora9i #chown oracle.dba /opt/OracleHome/Ora9i #touch /etc/rac_on #mkdir /opt/tmp #chmod 1777 /opt/tmp #cp oracle.bashrc /opt/OraclHome/.bashrc |
4.linux系統最佳化
#dd if=/dev/zero of=/opt/tmpswap bs=1k count=1024000 #chmod 600 /opt/tmpswap #mkswap /opt/tmpswap #swapon -v /opt/tmpswap #sysctl -w kernel.sem="250 32000 100 128" #sysctl -w kernel.shmmax=`expr 512 \* 1024 \* 1024` #echo "kernel.sem=250 32000 100 128" >> /etc/sysctl.conf #echo "kernel.shmmax=`expr 512 \* 1024 \* 1024`" >> /etc/sysctl.conf |
注:上兩行命令執行後請查看/etc/sysctl.conf的變化. #echo 65536 >/proc/sys/fs/file-max
#ulimit -n 65536 #ulimit -u 16384 |
注:上三行命令是系統最佳化,建議也添加到/etc/rc.local檔案中,每次啟動系統自動最佳化。
5.安裝
#xhost localhost #su - oracle #cd /opt/source/Disk1 #./runInstaller |
以下是幾點注意事項:
選擇software only
然後用命令dbca建立資料庫
1.安裝時字型問題的解決: #unset LANG
如果執行上述指令不行的話再修改/root/.i18n和/etc/sysconfig/i18n #vi /root/.i18n
注:root使用者的語言環境,注釋掉所有項後添加一行LANG="en_US" #vi /etc/sysconfig/i18n
注:系統中新增加使用者的語言環境(每增加一個使用者把它拷貝到其宿主目錄產生.i18n)
2.安裝過程中的報錯:
前幾個按報錯資訊的指示做,只有最後一個/opt/OraclHome/Oracle9i/ctx/lib/下某一檔案錯,應修改/opt/OraclHome/Oracle9i/ctx/lib/env_ctx.mk檔案
在INSO_LINK= 這一行添加一條記錄 $(LDLIBFLAG)dl
3.oracle使用者SHELL有問題 #userdel oracle
#adduser -u 499 -d /opt/OracleHome/ -g dba oracle
小秘籍:
#hdparm -t /dev/hda 查看硬碟讀寫速度,如只有2M左右,則執行#hdparm -d 1 /dev/hda 開啟DMA功能,可把它添加到/etc/rc.local檔案中。