歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Unix知識 >> BSD

FreeBSD 中安裝Oracle 9i


無可否認FreeBSD是最優秀的操作系統之一,但缺少大型商業數據庫的支持阻礙了FreeBSD走向高端和企業應用,Oracle作為數據庫的領頭雁,如果能夠在FreeBSD上安家,則是我等FreeBSD FANS的一個鼓舞。經過兩天的努力並參考了一個俄文網站的關於在FreeBSD上安裝ORACLE8i的介紹,成功地在FreeBSD5.2上安裝的 ORACLE9i。以下是安裝手記。
一 內核配置

# Add for oracle
options NBUF=2048
options MAXDSIZ="(1024UL*1024*1024)"
options MAXSSIZ="(1024UL*1024*1024)"
options DFLDSIZ="(1024UL*1024*1024)"
#
options SYSVSHM
options SHMMAXPGS=65536
options SHMMIN=2
options SHMMNI=256
options SHMSEG=256
#
options SYSVSEM
options SEMMAP=512
options SEMMNI=512
options SEMUME=512
options SEMMNS=1024
options SEMMNU=512
options SEMMSL=256
options SEMOPM=256
#
options SYSVMSG #SYSV-stylmessage queues
options MSGMNB=8192
options MSGMNI=256
options MSGSEG=8192
options MSGSSZ=16
options MSGTQL=128
# Add end
另外將maxusers設為512,我在定制內核時選擇的是ULE調度器,現在ULE已經是默認的調度器了。
二 系統配置

1 SWAP分區大小為1G,RAM256M,ORACLE_HOME要求有5G以上空間。
2 安裝Linux仿真環境。
必須安裝linux_base-7.1和linux_devtools-7.1兩個PKGS,但我在安裝時發現從ports已經無法安裝devtools -7.1了,所以被迫從一個安裝了RH7.3的機器中根據兩個ports的介紹將整個RH7.3系統CP到了FreeBSD中,如果需要我可以將這個目錄?樹打好一個tar包提供給和位。無論你如何構建/compat/linux目錄樹,必須保證在?掄真環境中有ar,as,ld,nm,tr,cpp, chmod,g++,printf,find,chgrp,chown等程序。
3 調整Linux仿真環境
a 在/compat/linux/etc中建立mtab到/etc/fstab的鏈接
ln -s /etc/fstab /compat/linux/etc/mtab
b 在/compat/linux/bin中建立到awk,sed,chown的鏈接
ln -s /compat/linux/usr/bin/awk /compat/linux/bin/awk
ln -s /compat/linux/usr/bin/sed /compat/linux/bin/sed
ln -s /usr/sbin/chown /compat/linux/bin/chown
以上配置是為了滿足ORACLE9i在安裝時的一些腳本的要求,我所知道的在運行root.sh時用到以上的配置,但也可以在運行前修改這個腳本,我安裝時用的是後??,不知是不是這個原因導致了後面會講的一個錯誤。
c 在/compat/linux/bin中建立arch可執行文件
內容為:
#!/compat/linux/bin/bash
echo i686 #根據你的機器是i586還是i486
打上可執行標記:
chmod +x arch
enable_linux="YES"
5 mount linux proc文件系統
mkdir /compat/linux/proc
mount -t linproc /dev/device /compat/linux/proc
第二步可以放入/etc/fstab文件中在開機時自動截入
6 添加oracle用戶組和用戶
pw groupadd -n dba -g 94
pw groupadd -n oinstall -g 95
pw useradd -n oracle -u 94 -c "Oracle Daemon" -d /home/oracle -s
/compat/linux/bin/bash -g dba -G oinstall,wheel
7 配置oracle用戶環境
mkdir /home/oracle
chown oracle:dba /home/oracle
cd /home/oracle
編輯.profile配置oracle用戶環境:
PATH=/compat/linux/bin:/compat/linux/sbin:compat/linux/usr/bin:/compat/
linux/usr/sbin:/home/oracle/920/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/
local/sbin:/usr/local/bin:/usr/X11R6/bin; export PATH
ORACLE_BASE=/home/oracle; export ORACLE_BASE
#下面一個是安裝oracle的目錄
ORACLE_HOME=/home/oracle/920; export ORACLE_HOME
LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH
ORACLE_SID=ORCL; export ORACLE_SID
ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
export DISPLAY=:0
三 安裝准備

下載oracle9i(9.2.0) for linux的三個文件在一個足夠大小(>2G)空間解壓縮最後得到三個目錄:Disk1,Disk2,Disk3。
四 安裝

1 以oracle用戶登錄
2 進入X
startx
3 在X中打開一個終端窗口,在窗口中運行安裝程序
cd /path/Disk1
./runInstaller
安裝程序開始運行,出現界面後按提示選擇進行安裝,這與安裝典型的
windows程序一樣,安裝時默認的臨時文件在/tmp目錄中,此時進入/tmp可看見oracle9i的安裝目錄和一些臨時文件。
4 安裝時的必須的手工干預
a 在剛開始安裝會有一個窗口提示運行一個腳本,這時可在另一個終端窗口中先以root身份在/compat/linux/etc中創建一個名為oraInst.loc的文件並將屬主設為oracle
cd /compat/linux/etc
touch oraInst.loc
chown oracle:dba oraInst.loc
然後以oracle身份運行腳本,之後繼續安裝。
b 在安裝部分完成後在連接數據庫的過程中有一個錯誤出現(與ins_ctx.mk有關),此時可選忽略,不會引響數據庫的基本功能,但在Agent配置時會出錯,其它正常。我不知道是否每一次安裝都會有這個錯誤,也不知道是什麼原因造成了這個錯誤。
    c 最後一個無需手工干預的地方在數據庫配置以前要以root身份運行$ORACLE_HOME/root.sh,此時觀察其輸出,不能有任何錯誤,如果有則是因為什麼程序找不到造成的,可以修改這個腳本將指定所提示的程序的正確路徑就可以了。
  5 安裝後根據需要進行數據庫配置,這與WINDOWS中是一樣的。
 五 安裝後啟動數據庫

  1 重啟系統
  2 以oracle身份登錄
  3 啟動數據庫
  在初次啟動數據庫時,要先將initORCL.ora這個文件(在你指定的全局數據名所在的目錄下的pfile目錄中)復制到$ ORACLE_HOME/dbs目錄中,並在dbs目錄中將oraPW.(全局名)的一個文件復制一份名為oraPW,然後就可以正常啟動數據庫了。
 六 總結

  從使用來看,直接在機器上使用sqlplus進行查詢,感覺不到有什麼不同,至於效率還未測試。不足之處請各位批評,並請高手修正安裝中的錯誤。
Copyright © Linux教程網 All Rights Reserved