您好,登錄后才能下訂單哦!
linux下數據庫實例監聽開機自啟動設置
2016/5/16 zhanky
腳本介紹
在開始之前,我們先介紹一下幾個會用到的腳本。
oratab
oratab文件是在創建數據庫實例時建立的,在安裝時使用root用戶執行root.sh腳本后得到。(如果忘記也可以直接手動創建。)
在$ORACLE_HOME/bin目錄下的$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut需要調用/etc/oratab文件,如果不存在,dbstart和dbshut將失敗,報錯信息為/etc/oratab" is notaccessible。
oratab的格式為: ORACLE_SID:ORACLE_HOME:AUTO
如 果需要自動啟動數據庫,則將AUTO設為Y,在調用dbstart命令才生效。dbstart根據/etc/oratab中的配置來啟動相應的數據庫,選 項只是能不能用$ORACLE_HOME/bin/dbstart和$ORACLE_HOME/bin/dbshut來啟動和關閉數據庫的開關。
如果不用dbstart腳本啟動數據庫,而是用自己的腳本來啟動,根本不需要oratab文件。
dbstart
dbstart是安裝數據庫時自帶的啟動數據庫實例的腳本,默認存放在$oracle_home/bin下。在這里我們通過設置系統開機自動執行dbstart腳本文件來實現,開機自動啟動數據實例。
lsnrctl
lsnrctl是安裝數據庫時自帶的啟動數據庫監聽的腳本,默認存放在$oracle_home/bin下。在這里我們通過設置系統開機自動執行lsnrctl腳本文件來實現,開機自動啟動數據監聽
rc.local
rc.local系統自帶的是開機啟動程序腳本,默認存放在/etc/rc.d下。我們通過在rc.local腳本中添加執行啟動數據庫和啟動監聽的腳本來實現開機自動開啟數據庫實例和監聽。
測試介紹
系統版本:linuxredhat 5.4 x64
數據庫版本:Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
實例名:test
ORACLE_HOME:/u01/app/oracle/product/11.2.0/dbhome_1
測試步驟
1、修改/oratab
因為我這邊環境中沒有oratab所以手動創建
[oracle@zky /]$ vi /etc/oratab [oracle@zky /]$ cat /etc/oratab test:/u01/app/oracle/product/11.2.0/dbhome_1:Y |
2、編輯rc.local
標紅地方為新加的內容。
第一條為:用oracle用戶登錄,運行lsnrctl start 腳本啟用監聽。
第二條為:用oracle用戶登錄,運行dbstart啟動數據庫
[root@zky /]$ vi /etc/rc.d/rc.local [root@zky /]$ cat /etc/rc.d/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 su - oracle -c "/u01/app/oracle/product/11.2.0/dbhome_1/bin/lsnrctl start" su - oracle -c "/u01/app/oracle/product/11.2.0/dbhome_1/bin/dbstart startup" [root@zky /]$ |
3、測試驗證,重啟數據庫即可。
然后就完成了數據庫實例和監聽的開機自啟動了。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。