一、資料庫管理者的工作内容
1、規劃與建設:
1、資料庫伺服器環境的架構評估與規劃。
伺服器環境的架構規劃與資料庫以後的運作相關,當伺服器環境的架構設計不良,
将會增加以後資料庫性能的限制與維護的困難。
是以,DBA在整套系統規劃初期,就必須針對資料庫未來的成長需求、性能需求、商業考慮等方面,
來決定資料庫運作上所需要的記憶體、硬碟、CPU、其他資源。
2、安裝及更新資料庫軟體。
這是最基本的工作之一,在安裝SQL Server軟體時,務必了解不同選項所代表的意義,
在更新SQL Server軟體前,要确認是否會影響到作業系統及應用程式。
3、資料庫的建立與設定。
當安裝完SQL Server軟體後,就要建立資料庫,此時要考慮資料庫存儲方式。
例如:索引、資料、表的存儲位置,是否需要建立分區表。
也就是必須确認SQL Server的實體結構和邏輯結構,如何以最佳方式展現。
4、建立完善的備份計劃。
資料庫備份與恢複是DBA最重要的職責之一,當資料庫損壞時,整個企業的運作會完全停止,
各方壓力和關愛的電話會接踵而來,等着DBA将資料庫在第一時間恢複,
而完善的備份計劃是關鍵,是以,規劃備份時必須考慮到系統的重要性、企業可承擔的風險。
5、建立資料庫安全管理規範。
需要将資料分門别類,将适當的資料提供給擁有适當權限的人。
2、營運與維護:
1、建立和維護資料庫使用者、所有對象。
一旦新使用者必須存取資料庫,或者原有使用者有權限變更需求時,DBA就必須按照安全管理規範,
給予适當的權限。當使用者有新增、修改、删除SQL Server對象時,DBA除了按照使用者的需求,做改動,
還需要給予适當的權限與存儲擺放方式。
2、控制和監控:使用者對資料庫的存取,以及資料庫資源的使用狀況。
通過SQL Server對象資源排程器,将使用者分成不同等級,依照等級的高低,提供不同的資料庫資源。
所謂資料庫資源包括:CPU使用量、記憶體使用率、聯機時間等,通過觸發器或存儲過程,
來監控對資料庫的存取,這樣當不正常存取時,可以實時發出警報。
3、監控資料庫的性能、存儲狀态、可用性。
一般資料庫在運作中斷前都會有一些細微的征兆,是以當征兆出現時,
如果能及時分析處理,就能避免不必要的中斷損失。
4、檢查資料庫備份是否成功、是否有效。
當有了完善的備份計劃後,就必須監控備份是否按照計劃且成功的執行,
另外,還需要定期将備份進行恢複測試,以確定備份的可用性。
5、監控資料庫安全。
善用SQL Server提供的Logon Trigger,确認或記錄使用者的身份,避免資料的竊取,保護企業的安全。
3、故障排除與災後恢複:
1、調整資料庫性能。
資料庫的性能可用與否,最終都是由資料庫的執行效率、穩定性來判斷的,
而性能問題在一開始設定時,往往不會顯現出來,當運作一段時間後,可能由于外在環境、使用者增加、資料 快速積累、程式修改,甚至硬體裝置老舊等因素,都會讓資料庫呈現疲态,
此時,性能調校對DBA就非常重要了。
2、災後恢複。
資料庫災後恢複的定義很廣泛,小到使用者的誤操作,大到硬體損壞、天然災害、其他不可預期的災難,
造成資料庫無法正常運作,DBA有責任在最短時間内将資料庫恢複,
這也就是為什麼規劃備份、監控備份、定期測試備份非常重要的原因了。
二、資料庫管理者的工作清單
1、每日例行工作:
每日資料庫例行工作,以監控資料庫正常運作為主要目的,基本例行工作應該包含以下項目:
1、确認所有SQL Server資料庫狀态正常。
A:從作業系統上檢測SQL Server程式是否正常存在。
B:以正常方式登入所有資料庫。
2、确認所有SQL Server是否能連接配接上,也就是是否正常監聽。
3、檢查作業系統空間使用狀态、檔案組(檔案)的使用情況。
可利用SQL指令查詢檢查使用狀況。
4、檢查錯誤日志ErrorLog中的錯誤資訊,并尋求解決方案。
5、檢查資料庫當日所有備份是否成功。
6、監控資料庫運作狀況。
此部分可利用系統螢幕等工具,監控資料庫運作狀況。
2、每周例行工作:
每周的主要例行工作,除了依照資料庫每日工作清單,尋求時機進行修正外,還有檢查以下工作事項:
1、根據每日檢查的表空間使用情況,找到資料增長很快的表,協調程式開發員, 并發現如下錯誤。
A:是否需要删除無用的曆史資料。
B:是否需要擴充資料檔案、日志檔案。
C:是否需要收縮資料檔案、日志檔案。
2、是否有新增的失效對象、無效的索引。如果有,那麼選擇适當時機重建。
3、是否有資料碎片。
所謂資料碎片,可以了解為資料直接的空隙,可能是資料頁内部的,也可能是資料頁和資料頁之間的,
這個碎片會導緻通路同一個表時,掃描更多的資料頁,占用更多的記憶體,會顯著的降低資料庫性能。
4、延續每日監控的資料庫運作狀況,按照需求修改資料庫參數,針對沒有效率的 SQL語句進行調優。
3、每月例行工作:
每月的主要例行工作,除了依照資料庫每日檢查工作清單以及每周檢查工作,
需要尋求适當時機進行修改外,還要檢查下列事項:
1、産生每月資料檔案的增長報告。
可利用SQL語句來産生每月資料庫增長報告,以及每月資料檔案增長報告。
2、根據每日、每周的監控統計,進行空間管理改進方案。
所謂的空間管理改進方案,就是依照每日、每周的監控結果,針對性能較繁重的對象(表、索引),
進行特殊的空間改善,以提高性能(比如分區表)。
3、修正碎片。
根據本月每周的檢查分析碎片情況,找到相應的解決方法。
4、每月至少檢查一次是否有Chained Rows連結行。
分為兩種類型:
A:行連結,主要造成的原因是每條資料太長,無法容納在一個資料塊裡。
B:行遷移,主要是當資料更新時,造成每條資料過長,必須前移到另一個較大的資料塊。
5、針對表及索引進行更新統計資訊。
資料庫執行SQL語句時,會依照統計資訊分析結果來産生執行計劃,
是以,統計資訊的結果對資料庫的性能影響占有相當大的分量。
每個月至少一次針對所有表、索引,進行更新統計資訊。
6、尋找資料庫性能調整的機會。
對比每天資料庫性能的監控報告,确定是否有必要對資料庫性能進行調整。
7、檢查備份計劃,測試備份的可用性。
檢查備份計劃的目的是,确認目前的備份計劃是否符合實際需求。
比如,每月資料庫的增長量是否會延長備份時間,而通常備份的時間是選擇在系統不太繁忙時運作,
如果由于備份時間延長,而導緻資料庫系統的正常作業,這就必須針對備份計劃進行調整。
是以,主要在于檢查平時的備份計劃是否可正常使用,當資料庫損壞時,熟練執行資料庫恢複的操作。
轉載于:https://www.cnblogs.com/momogua/p/8304512.html