RedHat Advance Server 3上安裝oracle 9.2.0, 并升級到9.2.0.4
轉載
RedHat Advance Server 3上安裝oracle 9.2.0, 并升級到9.2.0.4
今天花了一天的時間來裝Oracle,在網上找了不少的資料,結果發現十個人有十種安裝方法
參考了其中的四種,然后自己安裝了一遍,等于是綜合了大家的智慧,完成了Oeacle的安裝
我把自己總結的文檔發在這里,希望對大家有所幫助,絕對的原創啊
下面所講的安裝方法可能也適用于RedHat9,有興趣的朋友可以試一試
首先,準備安裝需要的軟件包和補丁包:
1.用rpm -qa│grep compat 查看系統中是否安有以下幾個軟件包:
compat-libstdc++-7.3-2.96.122
compat-gclearcase/" target="_blank" >cc-c++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
compat-db-4.0.14-5
compat-gcc-7.3-2.96.122
nss_db-compat-2.2-20.i386.rpm
2. rpm -qa │ grep openmotif查看下列軟件包
openmotif21-2.1.30-8
3. rpm -qa │ grep setarch查看:
setarch-1.3-1
以上文件如果沒有的話,在RHEL3的CD3和CD4上有相關的RPM包,使用:
# rpm -i compat...i386.rpm
命令來安裝相應的包.
4.從網上下載升級補丁包,用于將Oracle9.2.0升級到9.2.0.4:
p3006854_9204_LINUX.zip
所有的補丁說明如下:
p3095277_9204_LINUX.zip 9.2.0.4.0的升級補丁包.
p3006854_9204_LINUX.zip 在運行 runInstaller 之前打.
p3119415_9204_LINUX.zip 在升級到9.2.0.4.0之后打.
p2617419_210_GENERIC.zip 打3119415補丁所需要的補丁.
第二,準備安裝過程中需要的用戶和用戶組
在安裝的過程中我們使用兩個用戶同時進行,其中一個是root用戶,另外一個是你新建立的oracle用戶。
1、打開一個終端,以root用戶登錄或者是:su -
2、
# groupadd oinstall
# groupadd dba
# useradd -g oinstall -G dba oracle
# passwd oracle
第三,安裝準備步驟.
1、準備文件目錄:
# mkdir -p /opt/ora9/product/9.2
# mkdir /var/opt/oracle
# chown oracle.dba /var/opt/oracle
# chown -R oracle.dba /opt/ora9
2、設置內核參數,調節信號燈及共享內存:
# echo 250 32000 100 128 > /proc/sys/kernel/sem
# echo 536870912 > /proc/sys/kernel/shmmax
# echo 4096 > /proc/sys/kernel/shmmni
# echo 2097152 > /proc/sys/kernel/shmall
# echo 65536 > /proc/sys/fs/file-max
# echo 1024 65000 > /proc/sys/net/ipv4/ip_local_port_range
當然為了一開機系統就能自動幫你設好這些參數,也可改動 /etc/sysctl.conf 這個文件,加入以下的語句:
kernel.shmmax = 536870912
kernel.shmmni = 4096
kernel.shmall = 2097152
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
3、設置oracle對文件的要求:
編輯文件:/etc/security/limits.conf 加入以下語句:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
4、設置系統環境:
首先設置root用戶這個終端的。
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
(Oracle被安裝在這些位置)
這個步驟用來最后打補丁時使用,注意這個終端要保持不要關掉它。
5.設置oracle用戶的環境, 新開一個終端,
su - oracle
注意一定要新開一個
打開.bash.profile文件,將如下內容加入:
#oracle 9i
export ORACLE_BASE=/opt/ora9
export ORACLE_HOME=/opt/ora9/product/9.2
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/Apache/Apache/bin:$PATH
export ORACLE_OWNER=oracle
export ORACLE_SID=ora9i
export ORACLE_TERM=vt100
export LD_ASSUME_KERNEL=2.4.1
export THREADS_FLAG=native
export LD_LIBRARY_PATH=/opt/ora9/product/9.2/lib:$LD_LIBRARY_PATH
export PATH=/opt/ora9/product/9.2/bin:$PATH
#
# change this NLS settings to suit your country:
# example:
# german_germany.we8iso8859p15, american_america.we8iso8859p2 etc.
#
export LANG=en_US
保存后退出。
然后。退出登錄,再次進入,這時候oracle的環境就已經生效了。
6、解壓文件,安裝前打補丁,切換到root用戶的控制臺:
第四,開始正式安裝
1、
cd /home
mkdir ora9i
cd ora9i
這些目錄你可以自己定義,用來存放安裝文件。
然后將從網上下載的三個Oracle920的安裝文件拷到這里:
2.解gz文件
gunzip gunzip lnx_920_disk1.cpio.gz
gunzip lnx_920_disk2.cpio.gz
gunzip lnx_920_disk3.cpio.gz
3.釋放cpio文件
cpio -idmv < lnx_920_disk1.cpio
cpio -idmv < lnx_920_disk2.cpio
cpio -idmv < lnx_920_disk3.cpio
//這個步驟將生成三個文件夾:DISK1, DISK2, DISK3
2、打安裝前的補?。?nbsp;
以root身份運行.
這也是在/home/ora9i/里進行的。
# unzip p3006854_9204_LINUX.zip
Archive: p3006854_9204_LINUX.zip
creating: 3006854/
inflating: 3006854/rhel3_pre_install.sh
inflating: 3006854/README.txt
# cd 3006854
# sh rhel3_pre_install.sh
3、完成Oracle的安裝:
新開一個控制終端(用root用戶開)
#xhost +
這個命令用來保證oracle用戶調用X11,否則無法安裝
我看過的所有的文檔里都沒有提到,結果害得我在這個地方憋了兩個小時才搞定
#su - oracle
在登錄終端中切換到oracle用戶:
在oracle主目錄里運行:/home/ora9i/Disk1/runInstaller
注意的是以下幾點:
第一,在RedHat Advance Server 3下安裝Oracle9i不用將gcc降級,有些文檔里說需要將gcc降為2.96,其實是不需要的
第二,在部分文檔里,要求oracle用戶的bash.profile文件中降LD_ASSUME_KERNEL設置為2.4.19,千萬不要這樣設置,否則會在Rlink時會有一大堆報錯
第三,安裝Oracle不需要額外安裝JDK,Oracle自己帶
第四,再安裝過程中,系統會提醒你用root身份去執行兩個sh文件,再root的登錄終端中按提示操作就可以了
第五,Relink階段,會出兩個錯誤:ins_oemagent.mk 和 ins_ctx.mk. 點 Ignore 忽略.
第六.注意在安裝過程中不要創建數據庫,如果創建了也沒有關系在升級之前將它給刪除掉(不過裝了再刪是不是有點麻煩?干脆不創建數據庫了)
上面這幾點害得我郁悶死了!!!!!!!!一定要注意啊!!!!
第五,開始升級Oracle9.2.0
1.
安裝結束后,HTTPD會自動運行.在升級之前,需要將它停下來.
$ cd $ORACLE_HOME/Apache/Apache/bin
$ ./apachectl stop
./apachectl stop: httpd stopped
LISTENER也需要停下來.
$ lsnrctl stop
LSNRCTL for Linux: Version 9.2.0.1.0 - Production on 07-NOV-2003 16:25:41
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (ADDRESS=(PROTOCOL=tcp)(PORT=1521))
The command completed successfully
注意:
如果不停的話,oracle會提示不能覆蓋文件.這個時候再去將服務停下來也可以,點Retry就可以了.
2.
開始打補丁升級.
注意打補丁時使用root用戶,切換到root用戶控制臺:
解包:
$ unzip p3095277_9204_LINUX.zip
Archive: p3095277_9204_LINUX.zip
inflating: 9204_lnx32_release.cpio
inflating: README.html
inflating: patchnote.css
$ cat 9204_lnx32_release.cpio │ cpio -i --make-directories
做完這個后,再切換到oracle用戶控制臺, 再次運行/home/ora9i/Disk1/runInstaller升級,注意必須先選擇最下面的安裝選項,安裝OUI
要不然沒有辦法打那個最上面的升級補丁。
升級完OUI后,要退出,再次運行/home/ora9i/Disk1/runInstaller
選擇第一個選項,將Oracle升級到9.2.0.4。
這時候還是會有一個錯誤出現。再次選擇忽略它。
3、打其他的補?。?nbsp;
切換到root的終端。注意這個最好是原來那個保持了ORACLE_HOME, ORACLE_BASE的環境變量那個終端:
修復ins_oemagent.mk錯誤.
首先安裝 opatch.
$ unzip p2617419_210_GENERIC.zip
Archive: p2617419_210_GENERIC.zip
creating: OPatch/
creating: OPatch/docs/
inflating: Opatch/docs/FAQ
......
inflating: README.txt
$ ls
$ pwd
/home/or9i
$ export PATH=$PATH:/home/or9i/OPatch:/sbin
注意:
修改PATH時,除了要包括解壓出來的OPatch目錄外,還要包括/sbin目錄.這一點,metalink上沒有說.
$ unzip p3119415_9204_LINUX.zip
Archive: p3119415_9204_LINUX.zip
creating: 3119415/
......
inflating: 3119415/README.txt
$ cd 3119415
$ opatch apply
呵呵,在這一步看到success的提示,那么全部的安裝就算成功了.
祝賀你,惡夢結束了
用$dbca
看看能不能出現Oracle的圖形管理工具
額外的提示:
第一:很多人都沒有解決安裝界面亂碼的問題,很不幸,我也沒有解決.只找到一個曲線救國的辦法.采用的方法是將系統語言暫時設置為英文,安裝結束后再更改回中文簡體,這樣可以解決安裝過程中的問題
如果你有解決的辦法,請告訴我,謝謝!
第二:要分清每一個步驟是需要用oracle用戶還是root用戶,有些問題,可以用set命令看看環境變量是不是設置正確
第三,Oracle升級時所用的補丁必須以root身份打