張 洋
(中國海洋大學信息科學與工程學院 山東 青島 266100)
在維護設備的過程中,我們常常會涉及到對Oracle數(shù)據(jù)庫的一些基本操作。然而,當我們想更深入了解它時,Oracle的復雜性以及UNIX系統(tǒng)人機界面的單調性卻總是令我們感到難以上手。本文將介紹如何通過Oracle企業(yè)管理器對數(shù)據(jù)庫進行監(jiān)控與操作以及如何在UNIX環(huán)境下配置使用Oracle10g企業(yè)管理器。
Oracle Enterprise Manager(Oracle企業(yè)管理器,簡稱OEM)是通過一組Oracle程序,為管理分布式環(huán)境提供管理服務。它為管理員提供了一個基于Internet標準的管理框架,一個穩(wěn)定的控制臺程序,一組實用的管理工具。
OEM控制臺與每一個服務器上的智能化代理(Intelligent Agent)相對應。 智能化代理能夠監(jiān)控系統(tǒng)的特定事件并且執(zhí)行任務(作業(yè))就象你在系統(tǒng)本地一樣。事件和作業(yè)的結果會被送回控制臺,這樣DBA就可以從任何可以訪問Web應用的位置通過OEM對數(shù)據(jù)庫和其他服務進行各種管理和監(jiān)控操作。
實現(xiàn)對Oracle運行環(huán)境的完全管理,包括Oracle數(shù)據(jù)庫、Oracle應用服務器、HTTP服務器等的管理;
實現(xiàn)對單個Oracle數(shù)據(jù)庫的本地管理,包括系統(tǒng)監(jiān)控、性能診斷與優(yōu)化、系統(tǒng)維護、對象管理、存儲管理、安全管理等;
實現(xiàn)對多個Oracle數(shù)據(jù)庫的集中管理。
OEM管理員是可以登錄到OEM控制臺,并執(zhí)行設置封鎖期、電子郵件通知調度、設置首選身份證明等管理任務的數(shù)據(jù)庫用戶。在默認情況下,只有SYS,SYSTEM和SYSMAN三個數(shù)據(jù)庫用戶才能登錄和使用OEM控制臺。其中,SYSMAN用戶是OEM控制臺的超級用戶,是在安裝OEM的過程中創(chuàng)建的,用于執(zhí)行系統(tǒng)配置、全局配置等任務。通常需要創(chuàng)建其他普通的OEM控制臺管理員,進行OEM控制臺的日常管理和維護工作。
OEM登陸后即進入其主目錄頁面,該頁面用來顯示數(shù)據(jù)庫運行狀態(tài)的信息。點擊“性能”,即進入“性能”屬性頁,通過該頁面可以實時監(jiān)控數(shù)據(jù)庫服務器運行狀態(tài),提供系統(tǒng)運行參數(shù)。通過“管理”屬性頁,可以配置和調整數(shù)據(jù)庫的各個方面,以提高性能和調整設置。通過“維護”屬性頁,可以實現(xiàn)數(shù)據(jù)庫的備份與恢復,將數(shù)據(jù)導出到文件或從文件中導入數(shù)據(jù),將數(shù)據(jù)從文件加載到Oracle數(shù)據(jù)庫中,收集、估計和刪除統(tǒng)計信息,同時提高對數(shù)據(jù)庫對象進行SQL查詢的性能。
通過以上的介紹,我們不難看出OEM具有非常強大的功能和極為友好的人機交互界面。利用OEM,在數(shù)據(jù)庫維護過程中,我們可以以極低的成本和極小的復雜性換取高可用性、可伸縮性和極佳的服務性能;在數(shù)據(jù)庫的查詢操作中,我們可以很直觀的看到數(shù)據(jù)庫中所有的表、視圖、索引等,以及其中所包含的所有字段,操作簡便,結果顯示清晰明了,格式化效果好。所以,OEM為我們學習、維護Oracle數(shù)據(jù)庫提供了有力的技術支持。
在人機界面以命令行方式為主的UNIX系統(tǒng)環(huán)境下,單調、抽象的操作方式無疑給我們對數(shù)據(jù)庫的維護增添了不少困難,而集成了強大功能的OEM就是我們的“答案”。這里我們結合OEM的三層框架結構,總結一下在UNIX環(huán)境下OEM的配置過程。
Oracle企業(yè)管理器的不同于以往的客戶-服務器結構,具有三層框架結構,即客戶層、管理服務層和節(jié)點層。
客戶層
客戶層又可稱為應用層或者交互層,相當于客戶端。在這一層上可運行控制臺程序、管理工具以及各種客戶應用程序,并且可以有多個控制臺程序同時運行。具有圖形界面的控制臺程序極大的方便了數(shù)據(jù)庫管理員。
管理服務層
管理服務層由管理服務器和資料檔案庫組成。其中Oracle管理服務器是整個企業(yè)管理器三層框架結構的核心,由它來提供管理的賬戶、處理進程,以及作業(yè)、事件等管理功能。資料檔案庫主要是用來存放所有的系統(tǒng)信息、應用程序信息、被管理節(jié)點的狀態(tài)信息,以及系統(tǒng)管理工具包的信息。Oracle管理服務器有一項最重要的職能就是把一個任務分配給多個智能代理來執(zhí)行。
結點層
結點層由若干個結點組成,一個結點可以是一個數(shù)據(jù)庫,還可以是其他類型的對象或者目標。在各個結點上都運行有智能代理,負責該結點的本地處理及監(jiān)控。智能代理的運行獨立于數(shù)據(jù)庫及結點中的其他對象或目標,獨立于控制臺,獨立于管理應用程序,并且獨立于Oracle管理服務器。這樣做的一個好處就是:當整個系統(tǒng)其他部分變得不可用時,智能代理還能夠獨立的運行。
3.2.1 配置節(jié)點層
為了管理結點和結點上的oracle服務,必須在結點上配置并運行一個智能代理。
①運行root.sh:
每一次oracle安裝之后,都必須運行root.sh腳本。該腳本設置了智能代理的執(zhí)行文件的訪問權限。 此腳本還創(chuàng)建或更新智能代理所用來確定是否系統(tǒng)上的所有數(shù)據(jù)庫都可以發(fā)現(xiàn)的oratab文件。驗證oratab文件列出了系統(tǒng)中的每個數(shù)據(jù)庫,并且遵循了正確的語法。 root.sh shell腳本文件應當已經(jīng)寫下了Oracle Home和SID的值。
②檢查dbsnmp的文件訪問權限:
為了驗證root.sh已被成功的執(zhí)行了,檢查dbsnmp的文件訪問權限:
$cd$ORACLE_HOME/bin
列出關于dbsnmp的相關詳細信息:
$ls-al dbsnmp
如果dbsnmp的所有者是root,訪問權限是-rwsr-xr-x,說明root.sh被成功的執(zhí)行了。
③在Unix上啟動智能代理:
在UNIX系統(tǒng)上,智能代理是由"lsnrctl"程序來啟動和停止dbsnmp進程的。
3.2.2 配置Oracle管理服務層
Oracle管理服務器(OMS)提供了在EM客戶端和被管理結點之間的集中控制。 OMS要有一個EM庫(Repository)來存儲所有的系統(tǒng)數(shù)據(jù),應用數(shù)據(jù)和環(huán)境中被管理結點的狀態(tài)。
①檢測是否啟動OEM服務
這里顯示警告,提示需要添加或者重新建立庫。我們可以通過運行企業(yè)管理器配置助理來完成創(chuàng)建。
3.2.3 配置客戶層
從Oracle10g開始,Oracle極大的增強了OEM工具,并通過服務器端進行EM工具全面展現(xiàn)。在10g中,客戶端可以不必安裝任何Oracle客戶端工具,僅憑瀏覽器就可以調用強大的EM工具。
①啟動EM工具控制臺
在Server端,可以通過如下命
令啟動EM工具控制臺:
$emctl start dbconsole
②訪問EM工具控制臺
啟動完成后,我們就可以通過在瀏覽器端輸入相應的url訪問EM工具控制臺了。
Oracle OEM是一個基于Java框架開發(fā)的集成化管理工具,它為數(shù)據(jù)庫管理員提供了一個功能強大、界面友好的數(shù)據(jù)庫管理平臺。通過它,我們可以更加準確、更加深入的認識Oracle數(shù)據(jù)庫,為保障設備安全運行打下扎實的基礎。