我有兩個地理上分開的SQL Server 2005實例。使用事務複製將重要數據庫從主要位置複製到次要位置。如何確保SQL Server複製正在運行?
我正在尋找一種方法,可以監控此複製,並在失敗時立即收到警報。
我們曾經有過兩個實例之間的網絡連接關閉一段時間的場合。由於複製不會發生,而且我們也不知道,所以事務日誌會被清空並填充磁盤,從而導致主數據庫中斷。
我的谷歌搜索前一段時間導致我們監測MSrepl_errors
表,並警告有什麼條目,但這根本不起作用。最後一次複製失敗(昨晚因此問題),錯誤僅在重新啓動時觸擊該表。
是否有其他人監視複製,你是如何做到的?
只是額外的一點點信息:
看來,昨晚的問題是,日誌讀取器代理死亡,並沒有再次啓動。我相信此代理負責讀取事務日誌並將記錄放入分發數據庫中,以便它們可以在輔助站點上覆制。
由於此代理在SQL Server內部運行,因此我們無法簡單地確定process
正在Windows中運行。
您是否有關於實際構成故障的信息?通常當備份在晚上運行時,帶寬會立即阻止複製。沒關係,只要它趕上了,所以我們不需要警報。我想這是一個平衡的行爲... – Damovisa 2009-06-17 00:29:22
說實話,我們還沒有完全弄清楚這一點。有時會觸發警報,但最終複製將成功完成。大多數情況下,當我們的快照正在生成時(我們每週都這樣做),我們會發出虛假警報。當特定的合併代理程序運行並失敗時,警報是真實的並且有意義(通常無法連接到發佈程序類型問題)。 – 2009-06-17 01:08:28