怎么管理好Oracle數(shù)據(jù)庫
概述:Oracle數(shù)據(jù)庫是一個最早商品化的關系型數(shù)據(jù)庫管理系統(tǒng)。是數(shù)據(jù)庫專業(yè)廠商Oracle的核心產品。也是當前應用最為廣泛、功能***大、具有面向對象特點、采用客戶機/服務器架構的數(shù)據(jù)庫系統(tǒng)。Oracle數(shù)據(jù)庫應用的范圍的擴大,管理好Oracle數(shù)據(jù)庫使其更好的服務與人們,那么怎么管理好Oracle數(shù)據(jù)庫呢?
作為一個通用的數(shù)據(jù)庫管理系統(tǒng),Oracle具有完整的數(shù)據(jù)管理功能,這些功能包括存儲大量數(shù)據(jù)、定義和操作數(shù)據(jù)、并發(fā)控制、安全性控制、完整性控制、故障恢復、與高級語言接口等。Oracle還是一個分布式數(shù)據(jù)庫系統(tǒng),支持各種分布式功能,特別是支持Internet應用。作為一個應用開發(fā)環(huán)境,Oracle提供了一套界面友好、功能齊全的數(shù)據(jù)庫開發(fā)工具,使用戶擁有一個良好的應用開發(fā)環(huán)境。Oracle使用PL/SQL語言執(zhí)行各種操作,具有可開放性、可移植性、靈活性等特點。特別是,Oracle支持面向對象的功能,如支持類、方法、屬性等概念,使得Oracle 產品成為一種對象/關系型數(shù)據(jù)庫管理系統(tǒng)。
對于數(shù)據(jù)庫管理員來說,工作中的壓力是巨大的,因為除了日常的巨大工作量外,還需要面對各種負責問題的突然發(fā)生。當問題發(fā)生之后,需要立即對發(fā)生的問題進行分析,然后采取相對優(yōu)化的措施來解決這些突如其來的問題。這些工作的順利完成離不開應用監(jiān)控軟件的支持。應用監(jiān)控軟件可以幫助數(shù)據(jù)庫管理員收集數(shù)據(jù)庫、操作系統(tǒng)的數(shù)據(jù),并且以圖形化的方式顯示這些數(shù)據(jù)的內容。
借助摩卡業(yè)務服務管理( Mocha Business Service Management,簡稱Mocha BSM)的應用監(jiān)控模塊,可針對Oracle數(shù)據(jù)庫提供可視化監(jiān)控、故障定位、統(tǒng)計報告等功能。
摩卡軟件具有近十年Oracle系統(tǒng)管理、相關開發(fā)和維護的經(jīng)驗,提供***管理價值的指標,細化到每一個應用元素的監(jiān)控,從根本上關注Oracle的運行狀態(tài)。以自動化的方式將Oracle進行監(jiān)管,實現(xiàn)平臺級故障預警、性能預警、配置變更預警等功能。 使管理員可以輕松、快捷的分析問題和采取相應的解決措施。
對Oracle DB進行性能調整
下面我們就舉例說明在Mocha BSM的幫助下通過調整共享池提升Oracle DB的性能:
調整共享池主要包括三個方面:庫高速、數(shù)據(jù)字典緩存、對話信息。由于Oracle管理共享池中數(shù)據(jù)的算法,使得數(shù)據(jù)字典緩存中的數(shù)據(jù)比庫高速緩存中的數(shù)據(jù)在內存中存留的時間長,因此,只要把庫高速緩存調整成可以接受的命中率,就能提高數(shù)據(jù)字典緩存的命中率。
一般來說,庫高速緩存總不命中數(shù)與總存取數(shù)之比應當接近零,如命中率值為0.001%,說明庫高速緩存命中率很高,該比率如果接近或大于5%,就應當立即采取措施來減少這種不命中。
措施一:增加初始化參數(shù)shared_pool_size的值,提高庫高速緩存可用的內存數(shù)量,同時為了取得好的效果,可能還要增加初始化參數(shù)open_cursors的值,以提高對話允許的光標數(shù)。需要注意的是:為庫高速緩存分配了太多的內存可能引起調頁或交換。
措施二:寫等價的SQL語句,盡可能讓SQL語句和PL/SQL塊共享一個SQL區(qū),來減少庫高速緩存的不命中。這是應用設計人員應該做到的:SQL語句或PL/SQL塊的文本必須每一個字符都等價,包括大小寫和空格。
Mocha BSM對Suse Linux 的有效管理
檢查、調整庫高速緩存 可以通過動態(tài)性能表V$LIBRARYCACHE來查詢Instance啟動以來所有庫高速緩存的活動。
V$LIBRARYCACHE表中以下幾列反映了庫高速緩存在執(zhí)行調用階段的不命中:
PINS列,它的值顯示在庫高速緩存中執(zhí)行的次數(shù);
RELOADS列,它的值顯示在執(zhí)行階段庫高速緩存不命中的數(shù)目。
檢查命中率
借助Mocha BSM對Oracle DB的60多個性能監(jiān)控指標之一:庫緩存命中率,您可以直觀的看到當前的Oracle DB的庫緩存命中率為97.79%并且根據(jù)您的需要,還可以對庫緩存命中率設置報警閾值,一旦被監(jiān)控的Oracle DB的庫緩存命中率超過設定的閾值,Mocha BSM將立即給數(shù)據(jù)庫管理員發(fā)出報警(方式包括:郵件、短信、電話、桌面聲光)。
Oracle數(shù)據(jù)庫有點很多,比如Oracle的穩(wěn)定性要比Sql server好、.Oracle在導數(shù)據(jù)工具sqlload.exe功能比Sqlserver的Bcp功能強大,Oracle可以按照條件把文本文件數(shù)據(jù)導入等,缺點是價格昂貴,因此管理好Oracle數(shù)據(jù)庫意義重大,
【編輯推薦】