RHEL5開啟和關閉Oracle執行個體以及自啟動

來源:互聯網
上載者:User

RHEL5開啟和關閉Oracle資料庫執行個體,分為兩步:第一步,啟動監聽;第二步,啟動資料庫執行個體。

一、如何啟動資料庫執行個體

1.進入到sqlplus啟動執行個體
[oracle@RedHat ~]$ su - oracle                                 --“切換到oracle使用者”
Password:
[oracle@redhat ~]$ lsnrctl start                               --“開啟監聽”
[oracle@redhat ~]$ sqlplus /nolog                                --“進入到sqlplus”
SQL*Plus: Release 10.2.0.1.0 - Production on Wed Oct 14 19:06:45 2009
Copyright (c) 1982, 2005, Oracle. All rights reserved.
SQL> conn /as sysdba                                              --“串連到sysdba”
Connected to an idle instance.
SQL> startup                                                     --“啟動資料庫執行個體
SQL> shutdown immediate                                         --“關閉資料庫執行個體”

[oracle@redhat ~]$ lsnrctl stop                                 --“關閉監聽”

2.用dbstart和dbshut啟動和關閉資料庫執行個體
先啟動監聽 lsnrctl start
啟動執行個體   dbstart
使用dbstart命令啟動資料庫比較方便,但是在linux上安裝好oracle之後,第一次使用dbstart命令可能會報如下錯誤:
Failed to auto-start Oracle Net Listene using /ade/vikrkuma_new/oracle/bin/tnslsnr
看起來貌似是監聽沒有起來,可是實際上,監聽可以成功啟動。
我們來看一下dbstart指令碼,該指令碼放在$ORACLE_HOME/bin下面。
搜尋dbstart裡面的tnslsnr:
grep tnslsnr dbstart
返回結果:
if [ -f $ORACLE_HOME_LISTNER/bin/tnslsnr ] ; then
    echo "Failed to auto-start Oracle Net Listene using $ORACLE_HOME_LISTNER/bin/tnslsnr"

返回結果中發現有$ORACLE_HOME_LISTNER變數,有可能是該變數的路徑不對,我們繼續搜尋ORACLE_HOME_LISTNER
grep ORACLE_HOME_LISTNER dbstart

返回結果:

# 3) Set ORACLE_HOME_LISTNER
ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle
if [ ! $ORACLE_HOME_LISTNER ] ; then
echo "ORACLE_HOME_LISTNER is not SET, unable to auto-start Oracle Net Listener"
LOG=$ORACLE_HOME_LISTNER/listener.log
if [ -f $ORACLE_HOME_LISTNER/bin/tnslsnr ] ; then
    $ORACLE_HOME_LISTNER/bin/lsnrctl start >> $LOG 2>&1 &
    export VER10LIST=`$ORACLE_HOME_LISTNER/bin/lsnrctl version | grep "LSNRCTL for " | cut -d' ' -f5 | cut -d'.' -f1`
    echo "Failed to auto-start Oracle Net Listene using $ORACLE_HOME_LISTNER/bin/tnslsnr"
        $LOGMSG "Restart Oracle Net Listener using an alternate ORACLE_HOME_LISTNER: lsnrctl start"

我們發現ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle中,指定的路徑不對,需要對這一行重新編輯,使其路徑制定到$ORACLE_HOME

用vi編輯dbstart,將ORACLE_HOME_LISTNER=/ade/vikrkuma_new/oracle更改為
export ORACLE_HOME_LISTNER=$ORACLE_HOME
然後儲存退出,此時再運行dbstart,已經不報錯了,但是沒有任何反應,ps一下進程,沒有oracle的進程,說明oracle執行個體沒有正常啟動。
此時的原因是在/etc/oratab的設定問題,我們cat一下,發現
zgz:/home/oracle/product/10g:N
最後設定的是"N"(我的環境中只有一個執行個體,因此只有一行配置語句),我們需要把“N”修改為“Y”。
以上的工作做好之後,dbstart就可以正常使用了:
[oracle@redhat bin]$ lsnrctl start                                  --“啟動監聽”
[oracle@redhat bin]$ dbstart                                   --“啟動資料庫執行個體”
[oracle@redhat bin]$ dbshut                                    --“關閉資料庫執行個體”
[oracle@redhat bin]$ lsnrctl stop                              --“關閉監聽”

二、如何使資料庫執行個體和linux系統一起啟動
在/etc/rc.d/rc.local中加入如下語句即可實現同系統啟動執行個體:
su - oracle -c "lsnrctl start"

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.