Linux下的Oracle啟動腳本及其開機自啟動建站知識
導讀:1建站知識這篇文章主要介紹了Linux下的Oracle啟動腳本及其開機自啟動的方法,大家可以參考使用高端網(wǎng)站建設seo網(wǎng)站優(yōu)化培訓。
說明:以下操作環(huán)境在CentOS 6.4 + Oracle 11gR2(Oracle安裝在ORACLE_BASE=/opt/oracle中,其ORACLE_HOME=/opt/oracle/11g)
用OUI安裝并配置Oracle數(shù)據(jù)庫后,Oracle就開啟了(包括:數(shù)據(jù)庫實例、監(jiān)聽器、EM)。在重啟操作系統(tǒng)之后,Oracle默認是沒有啟動的。使用如下命令查看Oracle相關服務是否已啟動:
ps aux | grep ora_ #若無ora_**_**相關的進程,則oracle數(shù)據(jù)庫實例未啟動netstat -tlnup | grep 1521 #若無任何顯示,則監(jiān)聽器未啟動lsnrctl st公司網(wǎng)站建設atus #查看監(jiān)聽器狀態(tài)netstat -tlnup | grep 1158 #若無任何顯示,則EM未啟動emctl status dbconsole #查看EM狀態(tài)手工啟動Oracle實例,可用sqlplus建立一個idle instance,然后再用startup啟動,如下:
數(shù)據(jù)庫實例啟動之后,需啟動監(jiān)聽器,才能讓遠程用戶建立連接。可使用如下命令啟動監(jiān)聽器:
復制代碼 代碼如下:
lsnrctl start
Oracle還提供網(wǎng)頁版的管理器,要使用該管理器需啟動相關服務,使用如下命令啟動:復制代碼 代碼如下:
emctl start dbconsole
至此,可在web瀏覽器中輸入:https://{主機IP 或 主機名 或 本地localhost}:1158/em,打開管理器,使用相關帳號登錄進行數(shù)據(jù)庫查看和管理。如果每次重啟操作系統(tǒng)都要進行以上操作好麻煩,那么如何讓Oracle作為系統(tǒng)服務在開機的時候自動啟動呢?Oracle在$ORACLE_HOME/bin下提供許多對數(shù)據(jù)庫進行操作的腳本,其中dbstart和dbshut可分別用來啟動和關閉數(shù)據(jù)庫。注意,這兩個腳本已包含監(jiān)聽器的啟動或關閉,但并未對EM進行相關的操作。使用如下命令:
復制代碼 代碼如下:
/opt/oracle/11g/bin/dbstart /opt/oracle/11g #啟動數(shù)據(jù)庫實例(包含監(jiān)聽器)/opt/oracle/11g/bin/dbshut /opt/oracle/11g #關閉數(shù)據(jù)庫實例(包括監(jiān)聽器)
以上命令要成功啟動數(shù)據(jù)庫實例還得打開Oracle設置的一個關卡:vi /etc/oratab,修改行:
復制代碼 代碼如下:
orcl:/opt/oracle/11g:Y #默認為orcl:/opt/oracle/11g:N
以root身份建立開機啟動oracle服務的腳本:vi /etc/init.d/oracle,添加如下腳本:
復制代碼 代碼如下:
#!/bin/sh#chkconfig: 2345 20 80#description: Oracle dbstart / dbshut#以上兩行為chkconfig所需ORA_HOME=/opt/oracle/11gORA_OWNER=oracleLOGFILE=/var/log/oracle.logecho "#################################" >> ${LOGFILE}date +"### %T %a %D: Run Oracle" >> ${LOGFILE}if [ ! -f ${ORA_HOME}/bin/dbstart ] || [ ! -f ${ORA_HOME}/bin/dbshut ]; then echo "Error: Missing the script file ${ORA_HOME}/bin/dbstart or ${ORA_HOME}/bin/dbshut!" >> ${LOGFILE} echo "#################################" >> ${LOGFILE} exitfistart(){ echo "###Startup Database..." su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbstart ${ORA_HOME}" echo "###Done." echo "###Run database control..." su - ${ORA_OWNER} -c "${ORA_HOME}/bin/emctl start dbconsole" echo "###Done."}stop(){ echo "###Stop database control..." su - ${ORA_OWNER} -c "${ORA_HOME}/bin/emctl stop dbconsole" echo "###Done." echo "###Shutdown Database..." su - ${ORA_OWNER} -c "${ORA_HOME}/bin/dbshut ${ORA_HOME}" echo "###Done."}case "$1" in 'start') start >> ${LOGFILE} 'stop') stop >> ${LOGFILE} 'restart') stop >> ${LOGFILE} start >> ${LOGFILE}esacdate +"### %T %a %D: Finished." >> ${LOGFILE}echo "#################################" >> ${LOGFILE}echo ""
聲明: 本文由我的SEOUC技術文章主頁發(fā)布于:2023-05-22 ,文章Linux下的Oracle啟動腳本及其開機自啟動建站知識主要講述腳本,標簽,Linux網(wǎng)站建設源碼以及服務器配置搭建相關技術文章。轉載請保留鏈接: http://www.bifwcx.com/article/web_5036.html