程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> linux下oracle 開機啟動

linux下oracle 開機啟動

編輯:Oracle數據庫基礎

Oracle隨Linux開機啟動 關機關閉

mysql 相對很簡單 只需要 chkconfig --add  MySQLd
就可以拉 。
網上找,馬上他配置哈還是 復雜點。
感覺還是能找到最簡單可行的方法 附後 :  
Oracle隨Linux開機啟動        環境:VM+redhat9+Oracle9.2        1.修改/etc/oratab內容
         ORACLE_SID:/u01/app/Oracle/product/10.2.0/db_1:N改為如下內容
        # add below content
        #$ORACLE_SID:$Oracle_HOME:Y
        demo:/u01/app/Oracle/product/9.2.0:Y        2.修改/etc/rc.local文件加以下內容
         ####################################
        location :/etc/rc.local
        ####################################
        !/bin/sh
         This script. will be executed *after* all the other init scripts.
         You can put your own initialization stuff in here if you don't
         want to do the full Sys V style. init stuff.
        touch /var/lock/subsys/local
        add below content
        su - oracle -c "/bin/sh /home/oracle/dbstart.sh"        3 new file dbstart.sh vi /home/Oracle/dbstart.sh的內容
         export ORACLE_BASE=/u01/app/Oracle
        export ORACLE_HOME=/u01/app/Oracle/product/9.2.0
        export Oracle_SID=demo
         start the listener
        /u02/Oracle/ora/bin/lsnrctl start
        #start the db
        sqlplus "/as sysdba" <<eof
        startup
        exit
        eof        問題:        當開閉Linux時,Oracle也會關閉,對事務有哪些影響
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、讓Oracle隨Linux啟動而啟動
修改Oracle系統配置文件/etc/oratab/etc/oratab 格式為: SID:ORACLE_HOME:AUTO把AUTO域設置為Y(大寫),只有這樣,Oracle 自帶的dbstart和dbshut才能夠發揮作用我在/etc/rc.local文件中加入
su - oracle -c "lsnrctlWindows 平台下,需要開機自動啟動Oracle,一般是這幾種方式試一下:1、設置Windows 的服務為自動啟動
2、注冊表中設置ORA_SID_AUTOSTART=true
3、命令行下執行:oradim -EDIT -SID SID -STARTMODE auto -INTPWD ... -PFILE ...不行的話,先確認一下口令文件是否正確(可以重新生成口令文件試試)。另外,如果還不行的話,也許是Windows 的問題,可以看看這裡:
http://support.microsoft.com/default.ASPx?kbid=841180、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、在Linux上自動啟動和關閉Oracle數據庫(9i/10g/11g)收藏
   
在Oracle 1gR2或更高版本下使用RAC或ASM時,Oracle Clusterware會自動啟動和停止Oracle數據庫實例,因此下面的過程不是必需的,對於其他情況,你就可以使用下面描述的方法了。◆su命令下面的描述是Oracle建議采用的自動啟動和關閉Oracle 9i實例的方法。一旦實例創建好後,標記/etc/oratab文件設置每個實例的重啟標志為“Y”:TSH1:/u01/app/Oracle/product/9.2.0:Y接下來,作為root用戶登陸創建一個叫做/etc/init.d/dbora的文件,包括下面的內容:#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $Oracle_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.ORA_HOME=/u01/app/Oracle/product/9.2.0
ORA_OWNER=Oracleif [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
ficase "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the Oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the Oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
;;
esac使用chmod命令設置權限為750:chmod 750 /etc/init.d/dbora使用下面的命令配合適當的運行級別設置dbora服務自動啟動:chkconfig --level 345 dbora on這樣有關的實例就會隨系統的啟動而啟動了。這個方法仍然適用於Oracle10g和11g,使用正確的路徑對ORA_HOME變量做一下改動,並將其添加到dbstart和dbshut末尾的行,在Oracle10gR2下可以移除啟動和停止監聽器的行了,因此dbstart命令包括啟動監聽器。#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $Oracle_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.ORA_HOME=/u01/app/Oracle/product/10.2.0/db_1
#ORA_HOME=/u01/app/Oracle/product/11.1.0/db_1
ORA_OWNER=Oracleif [ ! -f $ORA_HOME/bin/dbstart ]
then
echo "Oracle startup: cannot start"
exit
ficase "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the Oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/dbstart $ORA_HOME"
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the Oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/dbshut $ORA_HOME"
;;
esac◆rsh命令在Oracle10g中,Oracle推薦使用rsh命令而不是以前推薦的su命令了,在Oracle10gR2中,dbstart命令可以自動啟動監聽器,因此在這兩個版本之間有些不同之處,下面的說明更適合Oracle10g。一旦實例創建完畢,編輯/etc/oratab文件設置每個實例的重啟標志為“Y”:TSH1:/u01/app/Oracle/product/9.2.0:Y接下來,作為root用戶創建一個叫做/etc/init.d/dbora的文件,包括下面的內容:#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Change the value of ORACLE_HOME to specify the correct Oracle home
# directory for your installation.ORACLE_HOME=/u01/app/Oracle/product/10.2.0/db_1
#
# Change the value of Oracle to the login name of the
# Oracle owner at your site.
#
ORACLE=oraclePATH=${PATH}:$Oracle_HOME/bin
HOST=`hostname`
PLATFORM=`uname`
export Oracle_HOME PATH
#
if [ ! "$2" = "ORA_DB" ] ; then
if [ "$PLATFORM" = "HP-UX" ] ; then
remsh $HOST -l $Oracle -n "$0 $1 ORA_DB"
exit
else
rsh $HOST -l $Oracle  $0 $1 ORA_DB
exit
fi
fi
#
case $1 in
'start')
$ORACLE_HOME/bin/dbstart $Oracle_HOME
;;
'stop')
$ORACLE_HOME/bin/dbshut $Oracle_HOME
;;
*)
echo "usage: $0 {start|stop}"
exit
;;
esac
#
exit使用chmodml設置權限為750:chmod 750 /etc/init.d/dbora
使用下面的命令配合適當的運行級別設置dbora服務自動啟動:chkconfig --level 345 dbora on
現在相關的實例應該隨系統的啟動而自動啟動了。這個方法依賴於RSH服務器,它需要額外的軟件包和配置:# Install the rhs and rsh-server packages from the OS CD/DVD.
rpm -Uvh --force rsh-*# Enable rsh and rlogin.
chkconfig rsh on
chkconfig rlogin on
service xinetd reload
在FC5和FC6下嘗試這個方法時有問題,rsh是不被支持的,結果,我寧願使用su命令。這個方法也可以用於沒有使用ASM或RAC的11g數據庫。◆已知問題的解決在Oracle10gR2中使用時,調用dbstart可能會產生下面的錯誤消息:Failed to auto-start Oracle Net Listener using /ade/vikrkuma_new/Oracle/bin/tnslsnr
這是由於在dbstart腳本中使用了硬編碼路徑,要解決這個問題,編輯$ORACLE_HOME/bin/dbstart腳本,用ORACLE_HOME_LISTNER=$Oracle_HOME
替換ORACLE_HOME_LISTNER=/ade/vikrkuma_new/Oracle  //(大概在78行附近)
現在dbstart在啟動監聽器時應該就沒有問題了。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved