|
| [日期:2005-07-08] |
來源:CSDN 作者: |
] |
您可以使用數(shù)據(jù)庫維護(hù)計(jì)劃之【屬性】對(duì)話盒來更改日志傳送相關(guān)設(shè)定。在【交易記錄文件備份】設(shè)定頁提供的選項(xiàng)可更改日志傳送過程中交易日志文件備份的組態(tài)。

【記錄傳送】設(shè)定頁顯示出您先前在維護(hù)計(jì)劃內(nèi)設(shè)定的日志傳送配對(duì)服務(wù)器;如果您設(shè)定了其它組日志傳送配對(duì)服務(wù)器,也會(huì)列在此處。本設(shè)定頁也包含下列選項(xiàng):新增目的數(shù)據(jù)庫(用以建立新的日志傳送配對(duì)服務(wù)器)、刪除既有日志傳送配對(duì)服務(wù)器、編輯目前的日志傳送配對(duì)服務(wù)器之屬性,以及移除整個(gè)日志傳送功能。

當(dāng)您在【記錄傳送】設(shè)定頁之中點(diǎn)選【編輯】時(shí),將開啟【編輯目的數(shù)據(jù)庫】對(duì)話盒。您可以在對(duì)話盒內(nèi)【一般】設(shè)定頁檢視與修改次要服務(wù)器的交易日志文件之目錄位置,以及未來做為主要服務(wù)器時(shí)分享目錄之路徑?!境跏蓟吭O(shè)定頁則可讓您更改復(fù)原模式,以及次要服務(wù)器上復(fù)制與回存之頻率?!九R界值】頁可以設(shè)定日志傳送之臨界周期。

在【超出同步臨界值】項(xiàng)目可設(shè)定:當(dāng)日志傳送監(jiān)控程序產(chǎn)生警示訊息之前所能允許的最大時(shí)間間隔 (介于最近一次來源數(shù)據(jù)庫交易日志文件備份以及最新的交易日志文件回存動(dòng)作之間)。您也可以在日志傳送監(jiān)控程序之中設(shè)定此參數(shù)?!驹谌霑r(shí)間延遲】、【檔案保留期限】以及【歷程記錄保留期限】則是與次要服務(wù)器相關(guān)的設(shè)定。 注:監(jiān)控服務(wù)器在這些組態(tài)選項(xiàng)中扮演相當(dāng)重要的角色。因?yàn)椤居涗泜魉汀吭O(shè)定頁的大部分信息取決于監(jiān)控服務(wù)器,所以一但監(jiān)控服務(wù)器停擺時(shí),您將無法更改日志傳送的組態(tài)設(shè)定值。在監(jiān)控服務(wù)器執(zhí)行SQL Server 2000 Profiler時(shí),主要服務(wù)器會(huì)連到監(jiān)控服務(wù)器,然后從日志傳送資料表中取得既有的日志傳送計(jì)劃。因此,要改變?nèi)罩緜魉陀?jì)劃的設(shè)定時(shí),您必須確定在Enterprise Manager內(nèi)可以連接到監(jiān)控服務(wù)器。
檢查與監(jiān)控日志傳送動(dòng)作
SQL Server 2000的日志傳送功能還提供了一項(xiàng)日志傳送監(jiān)控程序,可讓您安裝在另一臺(tái)獨(dú)立監(jiān)控用服務(wù)器。 在SQL Server企業(yè)版與開發(fā)版的msdb數(shù)據(jù)庫中共有七個(gè)關(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 上述每一個(gè)資料表都存在于主要、次要以及監(jiān)控服務(wù)器上。各服務(wù)器也會(huì)使用某些資料表儲(chǔ)存資料,視該服務(wù)器在日志傳送系統(tǒng)的角色為何。 在主要服務(wù)器上檢視日志傳送動(dòng)作 從Enterprise Manager 里,您可以登入主要服務(wù)器,并觀察與監(jiān)控日志傳送動(dòng)作。如果某個(gè)數(shù)據(jù)庫已設(shè)定要進(jìn)行日志傳送,在數(shù)據(jù)庫【內(nèi)容】對(duì)話盒的【一般】頁可得知該數(shù)據(jù)庫的角色(來源數(shù)據(jù)庫;或是目的數(shù)據(jù)庫),也可知道日志傳送監(jiān)控程序是位于那一臺(tái)服務(wù)器上。您可以在Enterprise Manager內(nèi)SQL Server Agent的【作業(yè)】節(jié)點(diǎn),檢視日志傳送與交易日志文件備份工作所執(zhí)行的狀態(tài)與歷史紀(jì)錄。主要服務(wù)器只使用msdb數(shù)據(jù)庫的兩個(gè)日志傳送資料表。在log_shipping_databases資料表中,SQL Server新增的每一筆資料將會(huì)把數(shù)據(jù)庫維護(hù)計(jì)劃ID以及日志傳送來源數(shù)據(jù)庫連結(jié)在一起。在log_shipping_monitor資料表中,SQL Server新增的每一筆資料包含了監(jiān)控服務(wù)器的名稱,以及登入數(shù)據(jù)庫的方式。 在次要服務(wù)器上檢視日志傳送動(dòng)作 日志傳送計(jì)劃存在于次要服務(wù)器。您可在次要服務(wù)器監(jiān)控SQL Agent工作(復(fù)制交易日志文件到次要服務(wù)器,并回存至目的數(shù)據(jù)庫)。 您也可檢視目的數(shù)據(jù)庫的屬性對(duì)話盒,以決定該數(shù)據(jù)庫在日志傳送過程所扮演的角色。 在次要服務(wù)器上,SQL Server使用msdb數(shù)據(jù)庫的四個(gè)日志傳送資料表。當(dāng)SQL Server建立一個(gè)日志傳送計(jì)劃之后,它會(huì)新增一筆資料到log_shipping_plan資料表,用以紀(jì)錄:主要與次要服務(wù)器的名稱、檔案位置、復(fù)制與回存工作ID(來自于次要服務(wù)器之sysjobs系統(tǒng)資料表)。在log_shipping_plan_databases資料表,SQL Server會(huì)連結(jié)維護(hù)計(jì)劃以及來源/目的數(shù)據(jù)庫名稱,而且儲(chǔ)存最后一次進(jìn)行檔案復(fù)制與加載動(dòng)作的相關(guān)信息。log_shipping_plan_history資料表則是將每次日志傳送的復(fù)制與回存事件紀(jì)錄下來,連同該工作是否成功的信息。SQL Server也會(huì)新增一筆資料在log_shipping_monitor資料表,用以參照監(jiān)控服務(wù)器。 如果您勾選了【Allow database to assume primary role】復(fù)選框,您將在次要服務(wù)器上看到一個(gè)重要的額外項(xiàng)目:另一個(gè)數(shù)據(jù)庫維護(hù)計(jì)劃(與您先前所建立的維護(hù)計(jì)劃名稱相同),但是并沒有激活日志傳送。您也會(huì)看到一個(gè)非作用中(disabled)的SQL Agent工作(備份該數(shù)據(jù)庫的交易日志)。也許您會(huì)被這些項(xiàng)目所混淆。盡管它們的名字相同,但是此額外產(chǎn)生的維護(hù)計(jì)劃卻不同于當(dāng)初所建立的那個(gè)。SQL Server保留第二個(gè)逆向維護(hù)計(jì)劃是為了以后可能發(fā)生的主要/次要服務(wù)器角色對(duì)調(diào)動(dòng)作所準(zhǔn)備。
在監(jiān)控服務(wù)器上檢視日志傳送動(dòng)作 當(dāng)您正確設(shè)定日志傳送之后,SQL Server 會(huì)激活監(jiān)控服務(wù)器上Enterprise Manager 的日志傳送監(jiān)控工具程序。此外,SQL Server會(huì)建立兩個(gè)SQL Agent 警示工作(alert job):一個(gè)用來執(zhí)行工作,另一個(gè)處理out-of-sync情況。 使用監(jiān)控工具程序的方式是,開啟Enterprise Manager并連至監(jiān)控服務(wù)器,展開【Management】節(jié)點(diǎn),然后點(diǎn)選【記錄傳送監(jiān)視器(Log Shipping Monitor)】。當(dāng)您點(diǎn)選此工具程序時(shí),其內(nèi)會(huì)列出日志傳送配對(duì)服務(wù)器的清單。您可在配對(duì)服務(wù)器上按下鼠標(biāo)右鍵,檢視其備份、復(fù)制與回存等工作的執(zhí)行歷史紀(jì)錄。這些歷史紀(jì)錄十分有用,因?yàn)槟鷱倪@里得到的錯(cuò)誤訊息會(huì)比從次要服務(wù)器上(SQL Agent 復(fù)制與回存工作)得到的更為詳盡。 如圖所示:當(dāng)您開啟配對(duì)服務(wù)器之屬性對(duì)話盒,并進(jìn)入【Status】設(shè)定頁時(shí),您可檢視此配對(duì)服務(wù)器執(zhí)行備份與回存程序之狀態(tài)。

其狀態(tài)(Status)可以是Normal 或是Out-of-Sync。如果SQL Server Agent尚未復(fù)制或回存交易日志文件,對(duì)話盒內(nèi)將會(huì)顯示日志文件名為first_file_000000000000.trn。這并不是實(shí)際的文件名稱,只不過是用來標(biāo)示SQL Server Agent尚未處理任何檔案而已。在【Status】設(shè)定頁也會(huì)顯示備份、復(fù)制以及加載(回存)等動(dòng)作執(zhí)行時(shí)所耗費(fèi)的時(shí)間。此設(shè)定頁之信息不會(huì)自動(dòng)更新,所以您必須將此對(duì)話盒關(guān)閉后再開啟,才能更新其資料。 SQL Server只使用msdb數(shù)據(jù)庫內(nèi)兩個(gè)資料表來儲(chǔ)存日志傳送服務(wù)器之相關(guān)資料。SQL Server在這兩個(gè)資料表中都給予一個(gè)ID做為連結(jié),以及一個(gè)外來鍵(foreign key)。該外來鍵是設(shè)定在log_shipping_secondaries資料表上,并參照log_shipping_primaries資料表的primary_id字段(這兩個(gè)是所有日志傳送資料表中唯一具有外來鍵關(guān)系的資料表)。在log_shipping_primaries資料表內(nèi)的每筆資料都包含日志傳送的相關(guān)信息,例如:來源數(shù)據(jù)庫名稱、交易日志文件備份工作執(zhí)行之狀態(tài),以及已規(guī)劃的停擺信息(可避免不必要的警示訊息)。而log_shipping_secondaries 資料表之每筆資料關(guān)于目的數(shù)據(jù)庫之信息;每個(gè)目的數(shù)據(jù)庫附屬于特定的日志傳送來源數(shù)據(jù)庫。這兩個(gè)資料表互相連結(jié)的結(jié)果就是日志傳送監(jiān)控程序內(nèi)所顯示的配對(duì)服務(wù)器信息。
移除與重新組態(tài)日志傳送功能
如果您想從數(shù)據(jù)庫維護(hù)計(jì)劃中移除日志傳送功能,可參考下列方式:開啟該計(jì)劃的屬性對(duì)話盒,選擇【記錄傳送】設(shè)定頁,然后點(diǎn)選【移出記錄傳送】。此動(dòng)作將從次要服務(wù)器上移除SQL Server Agent的備份與回存工作,并清除日志傳送資料表內(nèi)的所有相關(guān)資料。此外,日志傳送監(jiān)控程序的相關(guān)信息也會(huì)一并被清除。然而此動(dòng)作將會(huì)適當(dāng)?shù)乇A糁饕?wù)器上SQL Server Agent的交易日志備份工作。只有在刪除數(shù)據(jù)庫維護(hù)計(jì)劃時(shí),該工作才會(huì)被移除。假如您想從監(jiān)控服務(wù)器內(nèi)移除掉日志傳送監(jiān)控程序,請(qǐng)用手動(dòng)方式將log_shipping_primaries與log_shipping_secondaries這兩個(gè)資料表(位于監(jiān)控服務(wù)器的msdb數(shù)據(jù)庫)的資料刪除即可。

如果您在數(shù)據(jù)庫維護(hù)計(jì)劃內(nèi)設(shè)定日志傳送時(shí),就已允許目的數(shù)據(jù)庫可以做為新的日志傳送來源數(shù)據(jù)庫。當(dāng)您刪除主要服務(wù)器的維護(hù)計(jì)劃時(shí),次要服務(wù)器上仍然會(huì)保留其數(shù)據(jù)庫維護(hù)計(jì)劃,以及交易日志文件備份工作。刪除這些項(xiàng)目的方式是將次要服務(wù)器上與日志傳送相關(guān)的數(shù)據(jù)庫維護(hù)計(jì)劃直接刪除。
|