DBA的系統管理任務【轉】

skuary發表於2012-01-11

DBA的另一主要任務是資料庫及其子系統的日常管理。這種日常管理並不僅僅侷限於資料庫本身。DBA需要知道系統如何作為一個整體執行,需要監控承載資料庫的伺服器的效能,還需要監控連線資料庫的網路的效能。以下幾節介紹了Oracle DBA管理系統的各個方面。

1. 故障排除

Oracle DBA負責的主要工作之一是排除資料庫的故障。故障排除是一個包羅永珍的詞,它可能涉及以下幾節所討論的很多工作。知道如何從Oracle支援人員處獲得適當的幫助以及如何利用Oracle的資源快速解決問題是故障排除的兩個重要方面。

2. 效能調優

效能調優是一個普遍存在的問題。它是設計階段、實現階段和測試階段的一個組成部分。事實上,效能調優是一個需要Oracle DBA不斷關注的任務。DBA可能需要進行資料庫調優或應用調優,或者兩者都需要調優,這取決於組織機構的設定。一般來說,DBA進行資料庫調優,並且協助應用程式開發人員在應用程式調優測試和實現階段完成。

一個使用中的資料庫的效能需求是不斷變化的,DBA需要觀察合適的指標並不間斷地監控資料庫的效能。例如,在遷移到較新的Oracle資料庫版本後,我發現有幾個大的批處理程式未在規定的時間內完成。在多次失敗後,我認識到這是由於某些程式碼使用了基於成本的優化程式提示,而這些提示在新Oracle版本下不再受到支援。後來,我只簡單地調整了這些提示,結果就極大地改善了程式的效能。這說明:在切換到新Oracle版本前,應該保證在新版本中測試過所有程式碼。

可以說,所有資料庫調優都可以分為兩類,即主動調優和被動調優。顧名思義,主動調優表示DBA細心監控必要的效能指標,阻止可能問題的出現。眾所周知,預防是最好的措施。因此主動調優的效果總是超過被動調優的效果。不過,大多數負責產品資料庫的Oracle DBA不能做到主動調優,他們總是忙於應付資料庫效能低下或類似的問題。DBA在日常工作中兩種資料庫調優都可能會遇到。

3. 監控系統

在資料庫投入實際執行之後,DBA就應該監控系統以保證不中斷服務。監控系統涉及如下任務:

監控資料庫空間,保證它對於系統足夠使用;

檢查以保證批作業按預期結束;

監控每天的日誌檔案,查詢未授權的登入企圖(DBA需要密切注意的東西)

4. 減少停機時間

通過消除停機(至少是使停機時間最小化)提供不間斷服務是評判DBA工作好壞的一個重要標準。當然,如果停機是由磁碟故障導致,公司的服務等級協議(SLA),如果有的話,會決定更換磁碟的速度。DBA不一定能控制SLA提供的最大時間。不過, DBA應該積極主動地防止可以避免的停機(例如由於某個程式耗盡空間而導致的停機)。

5. 估計需求

只有DBA能估計一個新專案的作業系統、磁碟和記憶體需求。DBA負責估計所管理的資料庫的增長以及後續要增加資源的需求。雖然有些硬體裝置(如每臺機器的CPU數目、UNIX伺服器的型別等)的需求是由系統管理員和經理人獨自提出的,但DBA通過提供資料庫需求的良好估計也可以給出幫助。

除了估計最初的需求外,DBA還負責對應用程式的未來增長以及可能的變化進行規劃。這就是所謂的容量規劃,DBA的估計將作為部門經理提出申請的基礎。

6. 建立備份和恢復策略

恰當的備份可以防止丟失組織機構寶貴業務資料這樣的慘劇發生。Oracle DBA需要制定合適的備份策略,並進行備份測試。DBA還需要制定恢復計劃,完成此項工作的最好方法是模擬幾種資料丟失的情況。許多公司極不重視備份與恢復計劃的恰當測試,儘管這對公司很重要。

丟失業務資料不僅導致直接損失金錢,而且最終還會失去客戶的信任。意外的資料庫停機反映公司的技術能力不強、管理無方。

如果災禍或技術故障使資料庫不能正常執行,DBA可以利用備份的副本有效地恢復資料庫。DBA負責為組織機構制定、實施、測試可靠的備份與恢復策略。事實上,沒有任何工作比在緊急情況下成功快速地恢復公司的資料庫更重要了。我曾經看到有的人由於一次與備份有關或與恢復有關的緊急事件而獲得職位或丟失職位,緊急事件對Oracle DBA的勇氣是一種考驗,其他的事情都做不到這一點。

在災難面前,有經驗的DBA相信自己有必備的技能,能做到從容應對。這種自信源自多年的勤奮學習、源自對完成緊急任務(如被損壞資料庫的恢復和備份)所需理論和操作命令的多年實踐。

7. 裝載資料

在建立了資料庫物件、模式和使用者以後,接下來需要裝載資料。資料一般來自舊系統,有時來自某個資料倉儲。如果資料裝載需要定期進行,DBA應該設計、測試和實現合適的裝載程式。

8. 變更管理

每個應用程式都會隨時間推移而改進功能、修復bug。在開發、測試和實現這樣一個迴圈往復的過程中,DBA起著重要的作用。變更管理完全是一個遷移新程式碼的過程,Oracle DBA需要了解發生在自己組織機構中的這個過程。

除了更新應用程式碼外,Oracle DBA還負責確保評估和安裝資料庫軟體的所有更新。這些所謂的軟體補丁一般可通過Oracle的MetaLink服務得到。最新的Oracle企業管理器能夠直接連線到MetaLink下載應用軟體補丁。

在Oracle Database 11g中,可以使用兩個新的更改管理特性Database Replay和SQL Performance Analyzer,預先找出系統更改,包括資料庫或伺服器的升級,對SQL和資料庫效能的影響。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25618347/viewspace-714723/,如需轉載,請註明出處,否則將追究法律責任。

相關文章