redhat Linux9下安裝Oracle9.2.0.4

Oracle9.2.0.4Red Hat 9上安裝,其中有寫內容是針對Oracle 9.2.0的。有些出現的問題在Oracle 9.2.0.4就沒有出現了。

redhat Linux9下安裝Oracle9.2.0.4的一點經驗

摘要:簡述在redhat Linux9環境下安裝Oracle9.2.0數據庫的過程。

關鍵字:Oracle9i redhat Linux9 內核參數 環境變量

一直是在redhat Linux7.1環境下使用Oracle817的,前幾天整理系統,乾脆整體升級,要在redhat Linux9環境下安裝Oracle9i。花了幾天的時間,在網上查找了很多資料和若干帖子,歸納整理了一下,然後動手終於在redhat9上成功的安裝 了Oracle9.2.0Oracle9i Enterprise Edition Release 9.2.0.1.0)。現在把安裝過程記錄一下,以備日後參考。

一、基本情況介紹:
我的機器配置情況:
CPU
P4 1.5G
內存:256M
硬盤:40GB

硬盤分區情況:
Windows
分區CDE,共有25GB
Linux Swap
1.5GB
Linux Ext2
12GB

操作系統:radhat9Linux Kernel 2.4.20-8

在網上看到的介紹Oracle如何安裝的文章說,OracleLinuxSwap分區的要求至少要有內存的2倍,即512M大小,當然越大越 好。最初在Linux7.1下使用Oracle817的時候,我的Swap分區大小一直是512M,在這次安裝Oracle9i的過程中發現,當到了創建 數據庫階段的時候,提示”out of momery”的錯誤,安裝過程被迫停止,估計是Swap有點小了,沒有辦法,又重新劃分了磁盤空間,把Swap分區一下子增大到1.5GB,再次安裝, 果然安全的、順利的、無誤的通過。 ^_^

Linux的文件分區最少需要7G。因爲在Linux下安裝Oracle的條件需求比較苛刻,所以在安裝redhat Linux9的時候我選擇是全部安裝,這樣在後面的Oracle9i安裝中系統就不需要再安裝這個包那個包了,省了很多的麻煩了,這個方法還是在 redhat Linux7.1下安裝Oracle817的時候學會的(在網上看到的文章中也有推薦說全部安裝的)。redhat Linux9的全部安裝大約需要4.5G的空間,而Oracle9i數據庫大概需要2GB的空間(何致億在他的文章中說數據庫系統需要2 ~ 2.5 GB的空間),所以一共下來差不多要7GB

以上數據僅供參考,一句話,給Linux的分區空間越大越好,對Oracle的操作越有利。 ^_^

二、準備工作:
1.Oracle 9i
的獲取
Oracle920_for_Linux
是我在 ftp://ftp.lib.tsinghua.edu.cn/ 這個站點上(清華的FTP服務器),花了一個晚上的時間來下載的,一共是3個壓縮文件,名字分別爲:
lnx_920_disk1.cpio.gz
大小爲527 MB (553,607,967 字節)
lnx_920_disk2.cpio.gz
大小爲561 MB (588,799,187 字節
)
lnx_920_disk3.cpio.gz
大小爲421 MB (442,089,854 字節
)
3
個文件共有1.47 GB (1,584,497,008 字節)

2.備註信息
看到網上的文章介紹,一般說是爲考慮兼容性的問題,在安裝前都需要對redhat系統進行安裝或替換一些rpm包,還要確定rpm包的依賴關係,
如:
glibc-2.3.2-5.i686.rpm
glibc-common-2.3.2-5.i386.rpm
glibc-devel-2.3.2-5.i386.rpm
等。

我認爲前面只要是選擇了redhat Linux9的全部安裝,不要再安裝或替換這些rpm包了(這個沒有深入的研究,不知道說的對不對,但至少是我在自己的機子上沒有再安裝替換這些rpm 包。還有的文章說網上提供免費下載的Red Hat9是一個不完全的版本,它本身並不帶有相應版本的glibc安裝包,需要對glibc進行安裝替換,也許是我下載的redhat Linux9完全的,所以我也沒有對glibc進行過任何操作。*_^ 當然在redhat Linux7X下進行安裝的時候要另當別論)。

另外,一些文章中介紹安裝Oracle9i的時候需要選擇JDK的版本進行安裝,我也沒有進行這方面的工作,是直接安裝Oracle9i的(因爲 Oracle的安裝程序是要有JDK支持的,估計redhat Linux9選擇的是全部安裝方式,development已經安裝了。可能關於這一點,讓曾經在redhat7x下安裝過Oracle8i的朋友有 點不解 *_* )。

三、配置操作:
既然省卻了前面那麼一大堆煩人的預安裝操作,那麼下面就來進行一些實質的操作,從這裏起,算是正式進入了Oracle9i的安裝過程。
1.
設置內核參數,調節信號燈及共享內存:
Oracle9i
使用Linux的共享內存、交換區等資源進行工作,如果系統的的內核參數設置不能滿足Oracle的需求,那麼在安裝或使用過程就會出現各種問題,因此建議配置或修改這些系統內核的參數。
打開/etc/sysctl.conf 文件,將下列數據寫入到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
其中,kernel.shmmax是共享內存段最大尺寸,kernel.shmmni是共享內存段最小尺寸。進入目錄/proc/sys/kernel,可分別用命令:
#cat shmmax
#cat shmmni
#cat shmall
查看 kernel.shmmax kernel.shmmnikernel.shmall的數值。
我在一篇文章看到kernel.shmmax的計算方法爲:
kernel.shmmax = 1024*1024*RAM(M)/2 (
至少)
用命令:
#cat sem
可以查看kernel.sem的數值。其中, 250 是參數SEMMSL的值,32000是參數SEMMNS的值, 100是參數SEMOPM的值,而128則是參數SEMMNI的值。
接下來,打開/etc/security/limits.conf文件,將下列數據添加到 limits.conf的末尾並保存:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
這是設置Oracle對文件的要求。
當對/etc/sysctl.conf 文件和/etc/security/limits.conf文件修改並保存完畢後,請重新啓動(rebootredhat Linux9系統,這樣設置的這些參數才能生效。

不重啓,執行# /sbin/sysctl -p $ulimit -a 也可

如果此時進入到/proc/sys/kernel路徑,用上述的命令再次查看,就會看到設置的參數已經生效。


2.
創建Oracle用戶帳號和安裝目錄
如有以前安裝過Oracle 8i for Linux的經驗,應該知道在安裝Oracle之前須先在Linux操作系統下新增一個名爲oracle的用戶,以及一個oracle DBA所專用的羣組。Oracle在安裝和使用中需要用特定用戶(非root用戶),按照Oracle的標準說明是需要添加三個專門用戶和用戶組。爲了簡 單方便安裝,我們建立兩個組,一個負責安裝,另一個負責管理,並把Oracle的安裝和使用歸到一個特定用戶來完成。

root用戶登錄,進行如下操作,建立兩個組(dba組與oinstall組)和一個Oracle用戶,操作命令如下:
#groupadd dba
#groupadd oinstall
#useradd -g oinstall -G dba oracle
#passwd oracle
設置oracle的密碼。我一般設置爲oracle

Oracle
安裝的位置應遵守OFA( Optimal Flexible Architecture 規範。Oracle9i的典型安裝需要至少兩個安裝點:一個安裝基本的運行程序,一個爲存放數據庫,並要確保oracle用戶對這兩個目錄具有可寫的權限。

運行下面的命令,創建Oracle的安裝點(mount point)

mkdir /opt/oracle9i
mkdir /opt/oracle9i/product
mkdir /opt/oracle9i/product/9.2.0
chown -R oracle.oinstall /opt/oracle9i
mkdir /var/opt/oracle9i
chown oracle.dba /var/opt/oracle9i
chmod 755 /var/opt/oracle9i

3.設置環境變量
oracle用戶身份登錄,打開編輯/home/oracle/.bash_profile文件,在文件末尾添加如下數據行並保存:
export LD_ASSUME_KERNEL=2.4.1
export ORACLE_BASE=/opt/oracle9i
export ORACLE_HOME=/opt/oracle9i/product/9.2.0
export ORACLE_SID= ORCL
#
(數據庫SID,可以修改,建議字母要大寫,我習慣用TEST,還有OUIHome(Oralce User Interface)
export ORACLE_TERM=xterm
export TNS_ADMIN=$ORACLE_HOME/network/admin
export LANG=en_US #
或者AMERICAN (設置語言AMERICAN英文)

#
建立數據庫時要注意選擇編碼爲:
Simplifiled Chinese ZHS16GBK
#
其他人的解決方案,安裝的時候最好用英文安裝界面,我曾經用中文出現創建數據庫時候出現無法輸入密碼的情況

export LC_ALL=zh_CN
export LANG=zh_CN
export JAVA_FONTS=/usr/share/fonts/zh_CN/TrueType/
#
添加以下安裝時就變成英文界面了,
export LC_CTYPE="en_US.UTF-8"
#
還可以設置爲用unset LANG安裝的時候就是正常的英文了

export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH
export PATH=$PATH:$ORACLE_HOME/bin

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH
#export DISPLAY=hostIP:0.0

#以下是可能需要的
#export PATH LD_ASSUME_KERNEL=2.4.1
#unset USERNAME
#
Oracle用戶的.profile.login文件中加入:umask 022

其它一種方法設置環境變量

export LD_ASSUME_KERNEL=2.4.1 # for RH 9 and RHEL AS 3

# Oracle Environment
export ORACLE_BASE=/opt/oracle9i
export ORACLE_HOME=$ORACLE_BASE/product/9.2.0
export ORACLE_SID=TEST
export ORACLE_TERM=xterm
# export TNS_ADMIN= Set if sqlnet.ora, tnsnames.ora, etc. are not in $ORACLE_HOME/network/admin
export NLS_LANG=AMERICAN_AMERICA.US7ASCII;
export ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
export LD_LIBRARY_PATH

# Set shell search paths
export PATH=$PATH:$ORACLE_HOME/bin

CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
CLASSPATH=$CLASSPATH:$ORACLE_HOME/network/jlib
export CLASSPATH

#
用來解決
Warning: Cannot convert string "AltReturn,Alt_Key_KP_Enter" to type
#$ xprop -root -remove _MOTIF_DEFAULT_BINDINGS

每次安裝之前運行
unset LANG
unset LC_ALL
unset LC_MESSAGE
然後

./runInstaller
oracle@logo oracle]$ cd /soft/oracle/Disk1
[oracle@logo Disk1]$ ./runInstaller
Initializing Java Virtual Machine from /tmp/OraInstall2005-12-24_10-59-12PM/jre/bin/java. Please wait...
Font specified in font.properties not found [-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-bold-i-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-bold-r-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-bold-r-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-medium-i-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-medium-i-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidabright-medium-r-normal--*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidabright-demibold-i-normal--*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidabright-demibold-r-normal--*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidabright-medium-i-normal--*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-medium-r-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-bold-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidasans-bold-i-normal-sans-*-%d-*-*-p-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Font specified in font.properties not found [-b&h-lucidatypewriter-medium-r-normal-sans-*-%d-*-*-m-*-iso8859-1]
Warning: Cannot convert string "Escape,_Key_Cancel" to type VirtualBinding
Warning: Cannot convert string "Home,_Key_Begin" to type VirtualBinding
Warning: Cannot convert string "F1,_Key_Help" to type VirtualBinding
Warning: Cannot convert string "ShiftF10,_Key_Menu" to type VirtualBinding
Warning: Cannot convert string "F10,Shift_Key_Menu" to type VirtualBinding
Warning: Cannot convert string "KP_Enter,_Key_Execute" to type VirtualBinding
Warning: Cannot convert string "AltReturn,Alt_Key_KP_Enter" to type VirtualBinding

這樣oracle用戶每次登錄時都帶有這些環境變量。

其中:ORACLE_HOME爲系統軟件的安裝目錄,ORACLE_SID 爲數據庫的SID,這裏可以自行設置。
最後一句”export DISPLAY=hostIP:0.0”,在網上一些介紹安裝Oracle的文章中提到過,我曾嘗試加上它,但是以oracle身份登錄的時候,會出現 hostIP的錯誤提示,並且無法正常登錄,我查了一些資料也沒有解決(我對Linux知之有限,如果您知道原因所在請您告訴我:[email protected],謝謝),所以在環境變量中將其註釋掉了,所幸的是這並不影響Oracle9i的安裝。

友情提示^_^:此處的環境變量的配置工作尤其重要。很多在Linux下安裝Oracle失敗的原因都是因爲環境變量沒有配置正確,環境變量的配置直接影響到下面Oracle9i的安裝和配置。所以提醒您在設置環境變量的時候多留神。

編輯並保存/home/oracle/.bash_profile文件後,建議先註銷退出oracle用戶,然後再以oracle用戶身份重新登錄,這樣可以測試一下配置的環境變量是否出錯(例如在上面提到的hostIP的錯誤)。

接下來就可以進行Oracle9.2.0 for Linux 的安裝工作了。


四、安裝過程:

1.對安裝文件進行解壓
root用戶登錄,新建目錄/setup,Oracle920_for_Linux 3個壓縮文件:

lnx_920_disk1.cpio.gz
大小爲527 MB (553,607,967 字節)
lnx_920_disk2.cpio.gz
大小爲561 MB (588,799,187 字節
)
lnx_920_disk3.cpio.gz
大小爲421 MB (442,089,854 字節)

複製到目錄/setup中。(如果您沒有建立/setup目錄,請您最好建立一個 &_&

進入到/setup目錄,對這3個文件進行解壓縮,操作命令如下:
#cd /setup

zcat Linux9i_Disk1.cpio.gz | cpio -idmv
zcat Linux9i_Disk2.cpio.gz | cpio -idmv
zcat Linux9i_Disk3.cpio.gz | cpio -idmv

#gunzip lnx_920_disk1.cpio.gz
#gunzip lnx_920_disk1.cpio.gz
#gunzip lnx_920_disk1.cpio.gz

等解壓完成後便生成3個如下名字的文件:

lnx_920_disk1.cpio
lnx_920_disk1.cpio
lnx_920_disk1.cpio

然後再解開cpio文件包,執行如下操作命令

#cpio -idmv < lnx_920_disk1.cpio
#cpio -idmv < lnx_920_disk2.cpio
#cpio -idmv < lnx_920_disk3.cpio

等三個文件包全部解壓完畢後,生成3個安裝文件夾,名稱分別爲Disk1Disk2Disk3。然後註銷退出root用戶,以oracle用戶登錄進行安裝。


2.
安裝過程

oracle用戶登錄,進行安裝。進入到/setup/Disk1目錄,執行如下命令:

終端安裝:
新開一個控制終端(root用戶開)
#xhost +192.168.0.2 (
本地IP地址
)
(xhost disable
訪問控制,客戶端可以從任何主機進行連接
)
這個命令用來保證oracle用戶調用X11,否則無法安裝


#cd /setup/Disk1
#./runInstaller

運行等一會後,就會出現Oracle Universal InstallerOUI)的圖形界面,按照提示一步步點擊”Next”安裝即可。

可惜,安裝的時候我沒有把安裝過程的界面截取成圖片保存下來,也懶的再重新安裝了,所以無法用圖片做進一步的描述。下面就用文字做一些描述和說明,如有什麼表達不清楚的地方,還請諒解。

前幾步保持默認設置,當遇到輸入”Unix Group Name”的時候,輸入組名”dba”,點擊下一步

此時Oracle Universal Installer會生成一個建立Oracle Inventory所用的orainstRoot.sh文件,彈出一個提示框,需要用root身份來執行這個/orainstRoot.sh文件,此時可 以再開啓一個新的終端窗口(Terminal),按照提示窗口所寫的目錄路徑來以root用戶來執行orainstRoot.sh。等執行完畢後再回到提 示窗口,按下”Continue”按鈕繼續安裝。

當遇到要輸入全局數據庫名(Global Database Name)和數據庫SID”的窗口時,會發現數據庫的SID已經按照環境變量中的設置的ORACLE_SID=YOUR_SID顯示出來了。只需要把全局數據庫名輸入即可。

接下來的安裝均按照默認設置來進行。

當遇到設置數據庫的字符集的窗體時,不要選擇默認的數據庫字符類型。字符集(Character Set)是建立Oracle數據庫時最重要的一項設定,如果設定的不正確,很可能造成在使用中無法正常存取中文數據。在這裏我們最好選擇第三個選項的下拉框,選擇Simplifiled Chinese ZHS16GBK,按Next進入下一步。

Oracle Universal Installer開始複製安裝文件之前,會顯示要安裝的Oracle9i產品摘要,在確認無誤後按下”Install”按鈕就會開始安裝了,這將是一個較長時間的過程,當然了,這和你機器的配置、運算速度和內存空間大小等都有關係。

因爲我的安裝程序是在硬盤上的,所以沒有象從光盤安裝時候的那些麻煩(具體的從光盤安裝的操作,請在網絡查閱相關資料吧。^_^ 其實我也沒有從光盤安裝的經驗 ^_^ )。

在接下來的安裝過程中會出現2個錯誤,我所看到的網上的文章中也都說到了,我在這裏也描述一下:

第一個錯誤是Linking階段 的,當安裝進度到69%的時候出現的,Oracle Universal Installer提示關於這個文件”/soft/oracle/network/lib/ins_oemagent.mk”有問題,這時我們可以暫時不要去管它,選擇”ignore”,將其忽略,等整個安裝過程完成以後,再來解決這個問題。(我看了很多資料上都是這麼幹的,於是乎,我也這麼幹。唉,真搞不明白 在RH7下安裝Oracle8i的時候也是會出現很多個錯誤提示的。)

第二錯誤也是Linking階段,當安裝進度到84%的時候出現的,Oracle Universal Installer提示”Error in invoking target install of makefile $ORACLE_HOME/ctx/lib/ins_ctx.mk”出現錯誤。
這個時候就不要選擇忽略了,可以修復這個錯誤,打開$ ORACLE_HOME/ctx/lib/env_ctx.mk文件進行如下編輯,將光標定位到第1365行,也就是”INSO_LINK =“這一行,然後把”$(LDLIBFLAG)dl”這句加入到”INSO_LINK=-L$(CTXLIB)$ (LDLIBFLAG)m”的後面,修改後成爲這個樣子:

 INSO_LINK = -L$(CTXLIB) $(LDLIBFLAG)m $(LDLIBFLAG)dl
$(LDLIBFLAG)sc_ca $(LDLIBFLAG)sc_fa $(LDLIBFLAG)sc_ex
$(LDLIBFLAG)sc_da $(LDLIBFLAG)sc_ut $(LDLIBFLAG)sc_ch
$(LDLIBFLAG)sc_fi $(LLIBCTXHX) $(LDLIBFLAG)c
-Wl,-rpath,$(CTXHOME)lib $(CORELIBS) $(COMPEOBJS)

然後保存$ORACLE_HOME/ctx/lib/env_ctx.mk文件,回到錯誤提示窗口,按”retry”按鈕即可繼續安裝。

當數據庫建立完畢,等安裝程序將所有文件複製到系統之後,Oracle Universal Installer還會彈出一個提示信息窗口要求以root身分執行運行root.sh程序 ,root.sh位於 ORACLE_HOME 所指向的目錄下。這個時候要再開啓一個新的終端窗口(Terminal),以oracle用戶的身份登錄進去,運行以下的命令操作命令如下:

#su root
#cd /opt/oracle9i/product/9.2.0
#./root.sh

運行後系統會提示如下信息:
Running Oracle9 root.sh script...
nThe following environment variables are set as:
ORACLE_OWNER= oracle
ORACLE_HOME= /opt/Oracle9i/product/9.2.0

Enter the full pathname of the local bin directory: [/usr/local/bin]

這裏填寫默認的目錄即:/opt/oracle9i/product/9.2.0/bin即可。


等這裏執行完畢後,如果一切正常,OUI會出現”The Installation Of Oracle9i Database Was successful.”的提示信息,此時說明Oracle920數據庫在redhat Linux9上安裝成功了!可真不容易啊! *_^

如果此時還需要進行其它內容的安裝,按下”Next Install”按鈕可進行安裝,否則,請按下”Exit”按鈕退出OUI安裝。

最後一步是修復一下剛纔的那個錯誤,即Linking階段安裝到69%的時候出現的”/soft/oracle/network/lib/ins_oemagent.mk”這個錯誤。

Oracle用戶執行如下命令:

#cd $ORACLE_HOME/network/lib
#make -f ins_net_client.mk install

然後編輯$ORACLE_HOME/ctx/lib/ins_ctx.mk 文件的第13-14行,由:

ctxhx: $(CTXHXOBJ)
$(LINK) $(CTXHXOBJ) $(INSO_LINK)
改爲:

ctxhx: $(CTXHXOBJ)
$(LINK) -ldl $(CTXHXOBJ) $(INSO_LINK)

保存$ORACLE_HOME/ctx/lib/ins_ctx.mk文件。

然後執行如下命令:

#make -f $ORACLE_HOME/ctx/lib/ins_ctx.mk install

將錯誤修復完成。

到此爲止,Oracle920數據庫在redhat Linux9上已經完全安裝成功了。

五、Oracel9i的使用

安裝完Oracle數據庫後會自動啓動,下面可以進行一下實際的操作。
oracle用戶身份登陸數據庫,可一個終端窗口(Terminal),進行如下的操作:

[oracle@Linux oracle]$ sqlplus "/ as sysdba" //sysdba用戶登陸數據庫

出現如下字符提示:
――――――――――――――――――――――――――――――
SQL*Plus: Release 9.2.0.1.0 - Production on Thu Feb 26 15:53:31 2004
Copyright(c) 1982,2002, Oracle Corporation. All rights reserved.

Connected to:
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 – Production

SQL>
――――――――――――――――――――――――――――――

運行shudown命令關閉數據庫,操作如下:

――――――――――――――――――――――――――――――
SQL> shutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL>
――――――――――――――――――――――――――――――

啓動Oracle 9i 數據庫,操作如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$ sqlplus "/ as sysdba"

SQL*Plus: Release 9.2.0.1.0 - Production on Thu Feb 26 16:00:59 2004
Copyright (c) 1982,2002, Oracle Corporation. All rights reserved.
Connected to an idle instance.

SQL> startup

Oracle instance started.

Total System Global Area 235999352 bytes
Fixed Size 450680 bytes
Variable Size 201326592 bytes
Database Buffers 33554432 bytes
Redo Buffers 667648 bytes
Database mounted.
Database opened.
SQL>
――――――――――――――――――――――――――――――

啓動Oracle 9i監聽程序,操作如下:
說明:Oracle的監聽程序主要是爲客戶端的連接提供接口的。

――――――――――――――――――――――――――――――
[oracle@Linux oracle]$ lsnrctl

LSNRCTL for Linux: Version 9.2.0.1.0 - Production on 26-FEB-2004 16:10:17
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Welcome to LSNRCTL, type "help" for information.

LSNRCTL> start
Starting /opt/oracle9i/product/9.2.0/bin/tnslsnr: please wait...

TNSLSNR for Linux: Version 9.2.0.1.0 - Production
System parameter file is /opt/oracle9i/product/9.2.0/network/admin/listener.ora
Log messages written to /opt/oracle9i/product/9.2.0/network/log/listener.log
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
Listening on: (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Linux)(PORT=1521)))

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
STATUS of the LISTENER
------------------------
Alias LISTENER
Version TNSLSNR for Linux: Version 9.2.0.1.0 - Production
Start Date 26-FEB-2004 15:28:23
Uptime 0 days 0 hr. 0 min. 0 sec
Trace Level off
Security OFF
SNMP OFF
Listener Parameter File /opt/oracle9i/product/9.2.0/network/admin/listener.ora

Listener Log File /opt/oracle9i/product/9.2.0/network/log/listener.log

Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=EXTPROC)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=Linux)(PORT=1521)))
Services Summary...
Service "ORCL.SOFT" has 1 instance(s).
Instance "ORCL", status UNKNOWN, has 1 handler(s) for this service...
Service "PLSExtProc" has 1 instance(s).
Instance "PLSExtProc", status UNKNOWN, has 1 handler(s) for this service...
The command completed successfully
LSNRCTL>
――――――――――――――――――――――――――――――

關閉Oracle 9i監聽程序,操作如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$ lsnrctl

LSNRCTL for Linux: Version 9.2.0.1.0 - Production on 26-FEB-2004 16:15:28
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Welcome to LSNRCTL, type "help" for information.

LSNRCTL> stop
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
The command completed successfully
LSNRCTL>
――――――――――――――――――――――――――――――

啓動Oracle Web Server,操作如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$cd $Oracle_HOME/Apache/Apache/bin
[oracle@Linux oracle]$./startJServ.sh
/opt/oracle9i/product/9.2.0/Apache/Apache/bin/apachectl start: httpd started
――――――――――――――――――――――――――――――

啓動Oracle Web Server後默認的端口號是7777,在客戶端的瀏覽器地址欄中輸入

http://xxx.xx.xxx.xxx:7777/

其中,xxx.xx.xxx.xxx代表IP地址,或用網絡機器名也可。如果瀏覽器出現 ORACLE HTTP Server的頁面,則說明Oracle Web Server運行正常。

關閉Oracle Web Server, 操作如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$cd $Oracle_HOME/Apache/Apache/bin
[oracle@Linux oracle]$./stopJServ.sh
/opt/oracle9i/product/9.2.0/Apache/Apache/bin/apachectl stop: httpd stopped
――――――――――――――――――――――――――――――

啓動Database Configuration Assistant,操作命令如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$dbca&
――――――――――――――――――――――――――――――

啓動Oracle Net Configuration Assistant,操作命令如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$netca&
――――――――――――――――――――――――――――――

啓動Enterprise Manager Configuration Assistant,操作命令如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$emca&
――――――――――――――――――――――――――――――

oemapp相關命令,如下:
――――――――――――――――――――――――――――――
[oracle@Linux oracle]$oemapp dbastudio
[oracle@Linux oracle]$oemapp console
[oracle@Linux oracle]$oemapp txtmgr
[oracle@Linux oracle]$oemapp ocmcli
[oracle@Linux oracle]$oemapp lmviewer
[oracle@Linux oracle]$oemapp ocm
[oracle@Linux oracle]$oemapp esmsrv
[oracle@Linux oracle]$oemapp opm
[oracle@Linux oracle]$oemapp cpta
[oracle@Linux oracle]$oemapp esm
[oracle@Linux oracle]$oemapp jdbctest
[oracle@Linux oracle]$oemapp oemutil
[oracle@Linux oracle]$oemapp topsess
[oracle@Linux oracle]$oemapp dataguard
[oracle@Linux oracle]$oemapp worksheet
[oracle@Linux oracle]$oemapp cp
[oracle@Linux oracle]$oemapp sdoadvisor
[oracle@Linux oracle]$oemapp pm
――――――――――――――――――――――――――――――

六、補充說明:

在網上看這樣一句話,我摘抄下來:請住記,Oracle9.2並不被Red Hat 9所認證的,而且這個結合也不是產品和環境配置所認可的。但是,作爲一個工作站,它是完全穩定並可用的。當然了,具體情況,還得看各位的具體應用如何了。

寫這個東東的所有的參考文章和參考數字及各種數據均來自互聯網,我謹代表我個人對免費提供這些材料的作者表示由衷的感謝。當然,您也可以對我寫的這個東東進行轉貼,但是希望您能保留文章的完整。^_^


1
.如果出現
Can't find init file for Database "SID".
I saw this error only with Oracle 9i R2 (9.2.0) when It tried to start the database with dbstart.

I copied the init file for my SID "TEST" from /opt/oracle/admin/ TEST /pfile to $ORACLE_HOME/dbs to get dbstart and dbshut working:
cp /opt/oracle/admin/ TEST /pfile/inittest.ora.642002224936 $ORACLE_HOME/dbs/init TEST.ora

2.
解決的辦法還有:

如果出現錯誤信息:
ORA-01078:failucr in processing system parameters
LRM-00109:could not open parametet file/opt/ora9/product/9.2/dbs/initora9i.ora
執行:#cp /opt/ora9/admin/orcl/pfile/init.ora.613200412101 /opt/ora9/product/9.2/dbs/initora9.ora

3.其實一個bug
In $ORACLE_HOME/bin you'll find a script called dbstart. This is a utility that you can run to start up databases on the server. Later we will add a call to this script from /etc/rc.d/init.d/dbora so that the databases start up automatically whenever the server reboots. Unfortunately, the dbstart script has a bug that will cause it to fail with the error message "Can't find init file for Database" in certain situations.
One way to fix this bug is to add the following line immediately after line 55:
SPFILE=${ORACLE_HOME}/dbs/spfile${ORACLE_SID}.ora
and change line 117 to read:
if [ -f $PFILE -o -f $SPFILE ] ; then


/etc
目錄下有一個文件叫oratab的,那裏面有你的數據庫當前的實例名,初始安裝時,這一行是加上註釋的,你只要去掉註釋就可以啓動你的數據庫了。並吧N換成Y

#!/bin/bash
# start and stop Oracle
# /etc/rc.d/init.d/oracle

ORA_HOME=/opt/oracle9i/product/9.2.0
ORA_OWNER=oracle

if [ ! -f $ORA_HOME/bin/dbstart -o ! -d $ORA_HOME ]
then
echo "Oracle startup: Can not start"
exit 1
fi
case "$1" in
start)
echo "Oracle startup"

su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"

echo "Finished"
;;
stop)
echo "Oracle shutdown"
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
echo "Finished"
;;
reload|restart)
$0 stop
$0 start
;;
*)
echo "Usage: /etc/rc.d/init.d/oracle {start|stop|restart|reload}"
exit 1
esac

#chmod u+x oracle

#vi /ect/rc.loacal
add this statement: /etc/rc.d/init.d/oracle start

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章