SQL Server 2008基于策略的管理
導(dǎo)讀:SQLServer2008通過引入可擴展的基于策略的管理功能降低了數(shù)據(jù)平臺的管理工作量。其中最引人注意的莫過于提供策略化管理的DeclarativeManagementFramework(簡稱DMF),不過這個名稱已經(jīng)被啟用了,現(xiàn)在正是名字是基于策略的管理(PolicyBasedManagement),我們姑且簡稱為PBM。PBM使DBA們可以制定管理策略,并將這些策略應(yīng)用到服務(wù)器、數(shù)據(jù)庫以及數(shù)據(jù)環(huán)境中的其他對象上去。經(jīng)過精心設(shè)計的管理策略可以幫助DBA們對數(shù)據(jù)環(huán)境進行前攝性的管理。
PBM的優(yōu)勢體現(xiàn)在:
按需管理:PBM提供了系統(tǒng)配置的邏輯視圖,因此DBA們可以預(yù)先定義各自所需要的數(shù)據(jù)服務(wù)配置,而不用等到這些需要實際發(fā)生的時候再去配置。
智能監(jiān)控:PBM可以持續(xù)監(jiān)控系統(tǒng)的配置變化,并阻止那些違反了策略的配置變化操作。
虛擬管理:通過PBM,DBA們可以對多臺服務(wù)器進行規(guī)模化管理,在企業(yè)內(nèi)部統(tǒng)一實施某些強制性配置會變得更加方便。
基于策略管理的框架
PBM的框架有三部分組成:
策略管理:管理員制定各種策略。
顯式管理:管理員通過對指定的目標(biāo)或目標(biāo)群應(yīng)用策略來檢查目標(biāo)對策略的依從性,或者更嚴(yán)格的是禁止這些目標(biāo)上違反策略的行為發(fā)生。
執(zhí)行模式:SQL Server 2008的PBM支持4種執(zhí)行模式,這4種模式?jīng)Q定了策略對目標(biāo)的影響程度。這四種模式分別是:
按需(OnDemand):這種模式下的策略可以有管理員自由的選擇是否應(yīng)用,例如管理員可以手動調(diào)用這些策略來檢查目標(biāo)的依從性,或者通過DDLTrigger來訂閱這些策略。
更新時阻止(On Change - Prevent):這是最嚴(yán)格的一種,SQL Server2008通過DDLTrigger的方式在訂閱該策略的目標(biāo)上發(fā)生操作時實施檢查操作對策略的符合性,如果違反策略則回滾該操作,以達到強制策略的效果。
更新時記錄(On Change - Log Only):SQL Server2008通過EventNotification的機制在在訂閱該策略的目標(biāo)上發(fā)生操作時實施檢查操作對策略的符合性,如果違反策略則發(fā)送消息,就將該違反操作通過ServiceBroker的隊列發(fā)送進行記錄。
按計劃(On Schedule):通過SQL Agent的作業(yè)來調(diào)用策略對目標(biāo)對象進行檢查。
雖然PBM有以上四種執(zhí)行模式,但是歸總起來其實是兩大種,一種是基于SQLAgent作業(yè)方式的OnSchedule模式,而另外一種是基于Event機制的OnChange模式。因此并非所有Facet都支持OnChange模式,要支持OnChange模式,那么Facet的狀態(tài)改變必須可以通過事件捕獲或者事務(wù)性的DDL操作,當(dāng)然OnSchedule和OnDemand就沒有這些機制,因為這兩種模式無需參與到Facet狀態(tài)更新的事務(wù)中去。
【編輯推薦】