[日期:2005-07-08] | 來源:CSDN 作者: | ] |
您可以使用數(shù)據(jù)庫維護計劃之【屬性】對話盒來更改日志傳送相關(guān)設(shè)定。在【交易記錄文件備份】設(shè)定頁提供的選項可更改日志傳送過程中交易日志文件備份的組態(tài)。
【記錄傳送】設(shè)定頁顯示出您先前在維護計劃內(nèi)設(shè)定的日志傳送配對服務(wù)器;如果您設(shè)定了其它組日志傳送配對服務(wù)器,也會列在此處。本設(shè)定頁也包含下列選項:新增目的數(shù)據(jù)庫(用以建立新的日志傳送配對服務(wù)器)、刪除既有日志傳送配對服務(wù)器、編輯目前的日志傳送配對服務(wù)器之屬性,以及移除整個日志傳送功能。
當您在【記錄傳送】設(shè)定頁之中點選【編輯】時,將開啟【編輯目的數(shù)據(jù)庫】對話盒。您可以在對話盒內(nèi)【一般】設(shè)定頁檢視與修改次要服務(wù)器的交易日志文件之目錄位置,以及未來做為主要服務(wù)器時分享目錄之路徑?!境跏蓟吭O(shè)定頁則可讓您更改復原模式,以及次要服務(wù)器上復制與回存之頻率。【臨界值】頁可以設(shè)定日志傳送之臨界周期。
在【超出同步臨界值】項目可設(shè)定:當日志傳送監(jiān)控程序產(chǎn)生警示訊息之前所能允許的最大時間間隔 (介于最近一次來源數(shù)據(jù)庫交易日志文件備份以及最新的交易日志文件回存動作之間)。您也可以在日志傳送監(jiān)控程序之中設(shè)定此參數(shù)?!驹谌霑r間延遲】、【檔案保留期限】以及【歷程記錄保留期限】則是與次要服務(wù)器相關(guān)的設(shè)定。
注:監(jiān)控服務(wù)器在這些組態(tài)選項中扮演相當重要的角色。因為【記錄傳送】設(shè)定頁的大部分信息取決于監(jiān)控服務(wù)器,所以一但監(jiān)控服務(wù)器停擺時,您將無法更改日志傳送的組態(tài)設(shè)定值。在監(jiān)控服務(wù)器執(zhí)行SQL Server 2000 Profiler時,主要服務(wù)器會連到監(jiān)控服務(wù)器,然后從日志傳送資料表中取得既有的日志傳送計劃。因此,要改變?nèi)罩緜魉陀媱澋脑O(shè)定時,您必須確定在Enterprise Manager內(nèi)可以連接到監(jiān)控服務(wù)器。
檢查與監(jiān)控日志傳送動作
SQL Server 2000的日志傳送功能還提供了一項日志傳送監(jiān)控程序,可讓您安裝在另一臺獨立監(jiān)控用服務(wù)器。
在SQL Server企業(yè)版與開發(fā)版的msdb數(shù)據(jù)庫中共有七個關(guān)于日志傳送的資料表:
log_shipping_plans
log_shipping_plan_databases
log_shipping_databases
log_shipping_plan_history
log_shipping_monitor
log_shipping_primaries
log_shipping_secondaries
上述每一個資料表都存在于主要、次要以及監(jiān)控服務(wù)器上。各服務(wù)器也會使用某些資料表儲存資料,視該服務(wù)器在日志傳送系統(tǒng)的角色為何。
在主要服務(wù)器上檢視日志傳送動作 從Enterprise Manager 里,您可以登入主要服務(wù)器,并觀察與監(jiān)控日志傳送動作。如果某個數(shù)據(jù)庫已設(shè)定要進行日志傳送,在數(shù)據(jù)庫【內(nèi)容】對話盒的【一般】頁可得知該數(shù)據(jù)庫的角色(來源數(shù)據(jù)庫;或是目的數(shù)據(jù)庫),也可知道日志傳送監(jiān)控程序是位于那一臺服務(wù)器上。您可以在Enterprise Manager內(nèi)SQL Server Agent的【作業(yè)】節(jié)點,檢視日志傳送與交易日志文件備份工作所執(zhí)行的狀態(tài)與歷史紀錄。主要服務(wù)器只使用msdb數(shù)據(jù)庫的兩個日志傳送資料表。在log_shipping_databases資料表中,SQL Server新增的每一筆資料將會把數(shù)據(jù)庫維護計劃ID以及日志傳送來源數(shù)據(jù)庫連結(jié)在一起。在log_shipping_monitor資料表中,SQL Server新增的每一筆資料包含了監(jiān)控服務(wù)器的名稱,以及登入數(shù)據(jù)庫的方式。
在次要服務(wù)器上檢視日志傳送動作 日志傳送計劃存在于次要服務(wù)器。您可在次要服務(wù)器監(jiān)控SQL Agent工作(復制交易日志文件到次要服務(wù)器,并回存至目的數(shù)據(jù)庫)。 您也可檢視目的數(shù)據(jù)庫的屬性對話盒,以決定該數(shù)據(jù)庫在日志傳送過程所扮演的角色。
在次要服務(wù)器上,SQL Server使用msdb數(shù)據(jù)庫的四個日志傳送資料表。當SQL Server建立一個日志傳送計劃之后,它會新增一筆資料到log_shipping_plan資料表,用以紀錄:主要與次要服務(wù)器的名稱、檔案位置、復制與回存工作ID(來自于次要服務(wù)器之sysjobs系統(tǒng)資料表)。在log_shipping_plan_databases資料表,SQL Server會連結(jié)維護計劃以及來源/目的數(shù)據(jù)庫名稱,而且儲存最后一次進行檔案復制與加載動作的相關(guān)信息。log_shipping_plan_history資料表則是將每次日志傳送的復制與回存事件紀錄下來,連同該工作是否成功的信息。SQL Server也會新增一筆資料在log_shipping_monitor資料表,用以參照監(jiān)控服務(wù)器。
如果您勾選了【Allow database to assume primary role】復選框,您將在次要服務(wù)器上看到一個重要的額外項目:另一個數(shù)據(jù)庫維護計劃(與您先前所建立的維護計劃名稱相同),但是并沒有激活日志傳送。您也會看到一個非作用中(disabled)的SQL Agent工作(備份該數(shù)據(jù)庫的交易日志)。也許您會被這些項目所混淆。盡管它們的名字相同,但是此額外產(chǎn)生的維護計劃卻不同于當初所建立的那個。SQL Server保留第二個逆向維護計劃是為了以后可能發(fā)生的主要/次要服務(wù)器角色對調(diào)動作所準備。
在監(jiān)控服務(wù)器上檢視日志傳送動作 當您正確設(shè)定日志傳送之后,SQL Server 會激活監(jiān)控服務(wù)器上Enterprise Manager 的日志傳送監(jiān)控工具程序。此外,SQL Server會建立兩個SQL Agent 警示工作(alert job):一個用來執(zhí)行工作,另一個處理out-of-sync情況。
使用監(jiān)控工具程序的方式是,開啟Enterprise Manager并連至監(jiān)控服務(wù)器,展開【Management】節(jié)點,然后點選【記錄傳送監(jiān)視器(Log Shipping Monitor)】。當您點選此工具程序時,其內(nèi)會列出日志傳送配對服務(wù)器的清單。您可在配對服務(wù)器上按下鼠標右鍵,檢視其備份、復制與回存等工作的執(zhí)行歷史紀錄。這些歷史紀錄十分有用,因為您從這里得到的錯誤訊息會比從次要服務(wù)器上(SQL Agent 復制與回存工作)得到的更為詳盡。
如圖所示:當您開啟配對服務(wù)器之屬性對話盒,并進入【Status】設(shè)定頁時,您可檢視此配對服務(wù)器執(zhí)行備份與回存程序之狀態(tài)。
其狀態(tài)(Status)可以是Normal 或是Out-of-Sync。如果SQL Server Agent尚未復制或回存交易日志文件,對話盒內(nèi)將會顯示日志文件名為first_file_000000000000.trn。這并不是實際的文件名稱,只不過是用來標示SQL Server Agent尚未處理任何檔案而已。在【Status】設(shè)定頁也會顯示備份、復制以及加載(回存)等動作執(zhí)行時所耗費的時間。此設(shè)定頁之信息不會自動更新,所以您必須將此對話盒關(guān)閉后再開啟,才能更新其資料。
SQL Server只使用msdb數(shù)據(jù)庫內(nèi)兩個資料表來儲存日志傳送服務(wù)器之相關(guān)資料。SQL Server在這兩個資料表中都給予一個ID做為連結(jié),以及一個外來鍵(foreign key)。該外來鍵是設(shè)定在log_shipping_secondaries資料表上,并參照log_shipping_primaries資料表的primary_id字段(這兩個是所有日志傳送資料表中唯一具有外來鍵關(guān)系的資料表)。在log_shipping_primaries資料表內(nèi)的每筆資料都包含日志傳送的相關(guān)信息,例如:來源數(shù)據(jù)庫名稱、交易日志文件備份工作執(zhí)行之狀態(tài),以及已規(guī)劃的停擺信息(可避免不必要的警示訊息)。而log_shipping_secondaries 資料表之每筆資料關(guān)于目的數(shù)據(jù)庫之信息;每個目的數(shù)據(jù)庫附屬于特定的日志傳送來源數(shù)據(jù)庫。這兩個資料表互相連結(jié)的結(jié)果就是日志傳送監(jiān)控程序內(nèi)所顯示的配對服務(wù)器信息。
移除與重新組態(tài)日志傳送功能
如果您想從數(shù)據(jù)庫維護計劃中移除日志傳送功能,可參考下列方式:開啟該計劃的屬性對話盒,選擇【記錄傳送】設(shè)定頁,然后點選【移出記錄傳送】。此動作將從次要服務(wù)器上移除SQL Server Agent的備份與回存工作,并清除日志傳送資料表內(nèi)的所有相關(guān)資料。此外,日志傳送監(jiān)控程序的相關(guān)信息也會一并被清除。然而此動作將會適當?shù)乇A糁饕?wù)器上SQL Server Agent的交易日志備份工作。只有在刪除數(shù)據(jù)庫維護計劃時,該工作才會被移除。假如您想從監(jiān)控服務(wù)器內(nèi)移除掉日志傳送監(jiān)控程序,請用手動方式將log_shipping_primaries與log_shipping_secondaries這兩個資料表(位于監(jiān)控服務(wù)器的msdb數(shù)據(jù)庫)的資料刪除即可。
如果您在數(shù)據(jù)庫維護計劃內(nèi)設(shè)定日志傳送時,就已允許目的數(shù)據(jù)庫可以做為新的日志傳送來源數(shù)據(jù)庫。當您刪除主要服務(wù)器的維護計劃時,次要服務(wù)器上仍然會保留其數(shù)據(jù)庫維護計劃,以及交易日志文件備份工作。刪除這些項目的方式是將次要服務(wù)器上與日志傳送相關(guān)的數(shù)據(jù)庫維護計劃直接刪除。