在Windows 操作系統下安裝Oracle 9i時會安裝很多服務——並且其中一些配置為在Windows 啟動時啟動。在Oracle 運行在Windows 下時,它會消耗很多資源,並且有些服務可能我們並不總是需要。你會發現不使用Windows 圖形界面就可以快速、完全地關閉數據庫會很有用。
只要擁有管理員權限就可以通過net start 啟動一個服務,或者通過net stop 命令停止一個服務,從而控制以下服務中的任何一個。在Windows XP 中,可以通過在控制面板的服務中改變想要禁用的服務(OracleOraHome...)的啟動類型(Startup Type)參數,雙擊某個服務查看其屬性,然後將啟動類型屬性從自動改為手動。
使數據庫在本地工作唯一需要運行的服務是OracleServiceORCL 服務(其中ORCL 是SID)。這個服務會自動地啟動和停止數據庫(使用shutdown 中斷)。如果安裝了一個數據庫,它的缺省啟動類型為自動。如果主要是訪問一個遠程數據庫,那麼可以把啟動類型由自動改為手動。
OracleOraHome92HTTPServer 服務(OraHome92 是Oracle Home 的名稱)是在安裝Oracle 時自動安裝的apache 服務器。一般情況下我們只用它來訪問Oracle apache 目錄下的Web 頁面,比如說JSP 或者modplsql 頁面。
OracleOraHome92TNSListener 服務只有在數據庫需要遠程訪問時才需要(無論是通過另外一台主機還是在本地通過 SQL*Net 網絡協議都屬於遠程訪問)。不用這個服務就可以訪問本地數據庫。
OracleOraHome92ClIEntCache 服務緩存用於連接遠程數據庫的Oracle Names 數據。正常情況下該服務的啟動類型是配置為手動的。然而,除非有一台Oracle Names 服務器,否則沒有必要運行這個服務。
有四個服務是Oracle 企業管理器所必須的(Oracle Enterprise Manager),這個服務分別為:OracleOraHome92Agent(智能代理),該服務監視數據庫和企業管理器請求,缺省啟動類型為自動。OracleOraHome92SNMPPeerEncapsulator 和OracleOraHome92SNMPPeerMasterAgent,處理安全網絡管理協議服務。OracleOraHome92PagingServer 通過一個使用調制解調器的數字傳呼機或者電子郵件發出警告。
OracleMTSRecoveryService 是可選的,該服務允許數據庫充當一個微軟事務服務器、COM/COM+對象和分布式環境下的事務的資源管理器。
如果只是偶爾使用一下數據庫,那麼可以創建一個簡單的腳本任務來啟動和關閉服務器,這樣每次只要雙擊腳本就可以了,可以不使用圖形界面。
1. 保存一個快捷方式自動地裝載這些文件。
2. 將Oracle 服務設為手動避免在Windows 啟動時啟動。
REM "dbstart.cmd"@echo offset ORAHOME="OraHome92"set ORASID="ORCL"net start OracleService%ORASID%REM net start Oracle%ORAHOME%HTTPServerREM net start Oracle%ORAHOME%TNSListenerREM net start Oracle%ORAHOME%ClIEntCacheREM net start Oracle%ORAHOME%AgentREM net start Oracle%ORAHOME%SNMPPeerEncapsulatorREM net start Oracle%ORAHOME%SNMPPeerMasterAgentREM net start Oracle%ORAHOME%PagingServerREM net start OracleMTSRecoverService
REM "dbshut.cmd"@echo offset ORAHOME="OraHome92"set ORASID="ORCL"net stop OracleService%ORASID%REM net stop Oracle%ORAHOME%HTTPServerREM net stop Oracle%ORAHOME%TNSListenerREM net stop Oracle%ORAHOME%ClIEntCacheREM net stop Oracle%ORAHOME%AgentREM net stop Oracle%ORAHOME%SNMPPeerEncapsulatorREM net stop Oracle%ORAHOME%SNMPPeerMasterAgentREM net stop Oracle%ORAHOME%PagingServerREM net stop OracleMTSRecoverService