1、數據庫管理員的工做內容html
關鍵詞:dba工做內容數據庫
轉自:http://blog.sina.com.cn/s/blog_44e0d0490102won1.html安全
一、規劃與建設:
一、數據庫服務器環境的架構評估與規劃。
服務器環境的架構規劃與數據庫之後的運做相關,當服務器環境的架構設計不良,
將會增長之後數據庫性能的限制與維護的困難。
所以,DBA在整套系統規劃初期,就必須針對數據庫將來的成長需求、性能需求、商業考慮等方面,
來決定數據庫運做上所須要的內存、硬盤、CPU、其餘資源。
二、安裝及升級數據庫軟件。
這是最基本的工做之一,在安裝SQL Server軟件時,務必瞭解不一樣選項所表明的意義,
在升級SQL Server軟件前,要確認是否會影響到操做系統及應用程序。
三、數據庫的建立與設置。
服務器
當安裝完SQL Server軟件後,就要建立數據庫,此時要考慮數據庫存儲方式。架構
例如:索引、數據、表的存儲位置,是否須要創建分區表。併發
也就是必須確認SQL Server的物理結構和邏輯結構,如何以最佳方式展示。工具
四、創建完善的備份計劃。
數據庫備份與恢復是DBA最重要的職責之一,當數據庫損壞時,整個企業的運做會徹底中止,
各方壓力和關愛的電話會接踵而來,等着DBA將數據庫在第一時間恢復,
而完善的備份計劃是關鍵,所以,規劃備份時必須考慮到系統的重要性、企業可承擔的風險。
五、創建數據庫安全管理規範。
須要將數據分門別類,將適當的數據提供給擁有適當權限的人。
二、營運與維護:
一、創建和維護數據庫使用者、全部對象。
一旦新使用者必須存取數據庫,或者原有使用者有權限變動需求時,DBA就必須按照安全管理規範,
給予適當的權限。當使用者有新增、修改、刪除SQL Server對象時,DBA除了按照使用者的需求,作改動,
還須要給予適當的權限與存儲擺放方式。
二、控制和監控:使用者對數據庫的存取,以及數據庫資源的使用情況。
經過SQL Server對象資源調度器,將使用者分紅不一樣等級,依照等級的高低,提供不一樣的數據庫資源。性能
所謂數據庫資源包括:CPU使用量、內存使用率、聯機時間等,經過觸發器或存儲過程,測試
來監控對數據庫的存取,這樣當不正常存取時,能夠實時發出警報。操作系統
三、監控數據庫的性能、存儲狀態、可用性。
通常數據庫在運做中斷前都會有一些細微的徵兆,所以當徵兆出現時,
若是能及時分析處理,就能避免沒必要要的中斷損失。
四、檢查數據庫備份是否成功、是否有效。
當有了完善的備份計劃後,就必須監控備份是否按照計劃且成功的執行,
另外,還須要按期將備份進行恢復測試,以確保備份的可用性。
五、監控數據庫安全。
善用SQL Server提供的Logon Trigger,確認或記錄使用者的身份,避免數據的竊取,保護企業的安全。
三、故障排除與災後恢復:
一、調整數據庫性能。
數據庫的性能可用與否,最終都是由數據庫的執行效率、穩定性來判斷的,
而性能問題在一開始設置時,每每不會顯現出來,當運行一段時間後,可能因爲外在環境、使用者增長、數據 快速積累、程序修改,甚至硬件設備老舊等因素,都會讓數據庫呈現疲態,
此時,性能調校對DBA就很是重要了。
二、災後恢復。
數據庫災後恢復的定義很普遍,小到使用者的誤操做,大到硬件損壞、自然災害、其餘不可預期的災難,
形成數據庫沒法正常運行,DBA有責任在最短期內將數據庫恢復,
這也就是爲何規劃備份、監控備份、按期測試備份很是重要的緣由了。
2、數據庫管理員的工做清單
一、每日例行工做:
每日數據庫例行工做,以監控數據庫正常運做爲主要目的,基本例行工做應該包含如下項目:
一、確認全部SQL Server數據庫狀態正常。
A:從操做系統上檢測SQL Server程序是否正常存在。
B:以正常方式登陸全部數據庫。
二、確認全部SQL Server是否能鏈接上,也就是是否正常監聽。
三、檢查操做系統空間使用狀態、文件組(文件)的使用狀況。
可利用SQL指令查詢檢查使用情況。
四、檢查錯誤日誌ErrorLog中的錯誤信息,並尋求解決方案。
五、檢查數據庫當日全部備份是否成功。
六、監控數據庫運行情況。
此部分可利用系統監視器等工具,監控數據庫運做情況。
二、每週例行工做:
每週的主要例行工做,除了依照數據庫每日工做清單,尋求時機進行修正外,還有檢查如下工做事項:
一、根據每日檢查的表空間使用狀況,找到數據增加很快的表,協調程序開發員, 並發現以下錯誤。
A:是否須要刪除無用的歷史數據。
B:是否須要擴展數據文件、日誌文件。
C:是否須要收縮數據文件、日誌文件。
二、是否有新增的失效對象、無效的索引。若是有,那麼選擇適當時機重建。
三、是否有數據碎片。
所謂數據碎片,能夠理解爲數據直接的空隙,多是數據頁內部的,也多是數據頁和數據頁之間的,
這個碎片會致使訪問同一個表時,掃描更多的數據頁,佔用更多的內存,會顯著的下降數據庫性能。
四、延續每日監控的數據庫運行情況,按照需求修改數據庫參數,針對沒有效率的 SQL語句進行調優。
三、每個月例行工做:
每個月的主要例行工做,除了依照數據庫每日檢查工做清單以及每週檢查工做,
須要尋求適當時機進行修改外,還要檢查下列事項:
一、產生每個月數據文件的增加報告。
可利用SQL語句來產生每個月數據庫增加報告,以及每個月數據文件增加報告。
二、根據每日、每週的監控統計,進行空間管理改進方案。
所謂的空間管理改進方案,就是依照每日、每週的監控結果,針對性能較繁重的對象(表、索引),
進行特殊的空間改善,以提升性能(好比分區表)。
三、修正碎片。
根據本月每週的檢查分析碎片狀況,找到相應的解決方法。
四、每個月至少檢查一次是否有Chained Rows連接行。
分爲兩種類型:
A:行連接,主要形成的緣由是每條數據太長,沒法容納在一個數據塊裏。
B:行遷移,主要是當數據更新時,形成每條數據過長,必須前移到另外一個較大的數據塊。
五、針對表及索引進行更新統計信息。
數據庫執行SQL語句時,會依照統計信息分析結果來產生執行計劃,
所以,統計信息的結果對數據庫的性能影響佔有至關大的份量。
每月至少一次針對全部表、索引,進行更新統計信息。
六、尋找數據庫性能調整的機會。
對比天天數據庫性能的監控報告,肯定是否有必要對數據庫性能進行調整。
七、檢查備份計劃,測試備份的可用性。
檢查備份計劃的目的是,確認目前的備份計劃是否符合實際需求。
好比,每個月數據庫的增加量是否會延長備份時間,而一般備份的時間是選擇在系統不太繁忙時運行,
若是因爲備份時間延長,而致使數據庫系統的正常做業,這就必須針對備份計劃進行調整。
所以,主要在於檢查平時的備份計劃是否可正常使用,當數據庫損壞時,熟練執行數據庫恢復的操做。