詳解Windows下管理Oracle服務(wù)
Oracle數(shù)據(jù)庫(kù)中有諸多的服務(wù),下文對(duì)Windows環(huán)境下的Oracle服務(wù)管理作了詳盡的闡述,希望對(duì)您學(xué)習(xí)Oracle數(shù)據(jù)庫(kù)方面能有所幫助。
在Windows操作系統(tǒng)下安裝Oracle時(shí)會(huì)安裝很多服務(wù)——并且其中一些配置為在Windows啟動(dòng)時(shí)啟動(dòng)。在Oracle運(yùn)行在Windows下時(shí),它會(huì)消耗很多資源,并且有些服務(wù)可能我們并不總是需要。你會(huì)發(fā)現(xiàn)不使用Windows圖形界面就可以快速、完全地關(guān)閉數(shù)據(jù)庫(kù)會(huì)很有用。
只要擁有管理員權(quán)限就可以通過(guò)net start啟動(dòng)一個(gè)Oracle服務(wù),或者通過(guò)net stop命令停止一個(gè)Oracle服務(wù),從而控制以下服務(wù)中的任何一個(gè)。在Windows XP中,可以通過(guò)在控制面板的服務(wù)中改變想要禁用的服務(wù)(OracleOraHome...)的啟動(dòng)類型(Startup Type)參數(shù),雙擊某個(gè)服務(wù)查看其屬性,然后將啟動(dòng)類型屬性從自動(dòng)改為手動(dòng)。
使數(shù)據(jù)庫(kù)在本地工作***需要運(yùn)行的服務(wù)是OracleServiceORCL服務(wù)(其中ORCL 是SID)。這個(gè)服務(wù)會(huì)自動(dòng)地啟動(dòng)和停止數(shù)據(jù)庫(kù)(使用shutdown 中斷)。如果安裝了一個(gè)數(shù)據(jù)庫(kù),它的缺省啟動(dòng)類型為自動(dòng)。如果主要是訪問(wèn)一個(gè)遠(yuǎn)程數(shù)據(jù)庫(kù),那么可以把啟動(dòng)類型由自動(dòng)改為手動(dòng)。
OracleOraHome92HTTPServer服務(wù)(OraHome92 是Oracle Home的名稱)是在安裝Oracle時(shí)自動(dòng)安裝的Apache服務(wù)器。一般情況下我們只用它來(lái)訪問(wèn)Oracle Apache目錄下的Web頁(yè)面,比如說(shuō)JSP或者modplsql 頁(yè)面。
OracleOraHome92TNSListener 服務(wù)只有在數(shù)據(jù)庫(kù)需要遠(yuǎn)程訪問(wèn)時(shí)才需要(無(wú)論是通過(guò)另外一臺(tái)主機(jī)還是在本地通過(guò) SQL*Net 網(wǎng)絡(luò)協(xié)議都屬于遠(yuǎn)程訪問(wèn))。不用這個(gè)服務(wù)就可以訪問(wèn)本地?cái)?shù)據(jù)庫(kù)。
OracleOraHome92ClientCache 服務(wù)緩存用于連接遠(yuǎn)程數(shù)據(jù)庫(kù)的Oracle Names數(shù)據(jù)。正常情況下該服務(wù)的啟動(dòng)類型是配置為手動(dòng)的。然而,除非有一臺(tái)Oracle Names服務(wù)器,否則沒(méi)有必要運(yùn)行這個(gè)服務(wù)。
有四個(gè)服務(wù)是Oracle企業(yè)管理器所必須的(Oracle Enterprise Manager),這個(gè)服務(wù)分別為:OracleOraHome92Agent(智能代理),該服務(wù)監(jiān)視數(shù)據(jù)庫(kù)和企業(yè)管理器請(qǐng)求,缺省啟動(dòng)類型為自動(dòng)。OracleOraHome92SNMPPeerEncapsulator 和OracleOraHome92SNMPPeerMasterAgent,處理安全網(wǎng)絡(luò)管理協(xié)議服務(wù)。OracleOraHome92PagingServer 通過(guò)一個(gè)使用調(diào)制解調(diào)器的數(shù)字傳呼機(jī)或者電子郵件發(fā)出警告。
OracleMTSRecoveryService 是可選的,該服務(wù)允許數(shù)據(jù)庫(kù)充當(dāng)一個(gè)微軟事務(wù)服務(wù)器、COM/COM+對(duì)象和分布式環(huán)境下的事務(wù)的資源管理器。
如果只是偶爾使用一下數(shù)據(jù)庫(kù),那么為了避免oracle服務(wù)每次跟隨系統(tǒng)啟動(dòng)占用資源,可以創(chuàng)建一個(gè)簡(jiǎn)單的腳本來(lái)啟動(dòng)和關(guān)閉服務(wù)器,這樣每次只要雙擊腳本就可以了,可以不使用圖形界面。
1. 制作一個(gè)批處理文件自動(dòng)地裝載這些服務(wù)。
2. 將Oracle服務(wù)設(shè)為手動(dòng)避免在Windows啟動(dòng)時(shí)啟動(dòng)。
啟動(dòng)腳本:dbstart.cmd
@echo off
echo ======啟動(dòng)Oracle系列服務(wù):======
rem 其中有幾個(gè)服務(wù)平時(shí)不必啟動(dòng),如需啟動(dòng),去掉REM指令即可:
set ORAHOME=DEFAULT_HOME1
set ORASID=POPDAY
echo
net start OracleService%ORASID%
net start Oracle%ORAHOME%HTTPServer
net start Oracle%ORAHOME%TNSListener
net start Oracle%ORAHOME%Agent
net start OracleMTSRecoveryService
rem net start Oracle%ORAHOME%ClientCache
rem net start Oracle%ORAHOME%SNMPPeerEncapsulator
rem net start Oracle%ORAHOME%SNMPPeerMasterAgent
rem net start Oracle%ORAHOME%PagingServer
pause
REM的幾個(gè)指令是屏蔽了此動(dòng)作,那幾個(gè)服務(wù)本身平時(shí)就是不一定用到的,所以沒(méi)有讓它啟動(dòng)。如果你需要用到,取消REM就可以了
關(guān)閉腳本:dbshut.cmd
@echo off
echo ======關(guān)閉Oracle系列服務(wù):======
set ORAHOME=DEFAULT_HOME1
set ORASID=ARCHWAY
echo
net stop OracleService%ORASID%
net stop Oracle%ORAHOME%HTTPServernet stop Oracle%ORAHOME%TNSListener
net stop Oracle%ORAHOME%Agent
net stop OracleMTSRecoveryService
rem net stop Oracle%ORAHOME%ClientCache
rem net stop Oracle%ORAHOME%SNMPPeerEncapsulator
rem net stop Oracle%ORAHOME%SNMPPeerMasterAgent
rem net stop Oracle%ORAHOME%PagingServer
PAUSE
【編輯推薦】