top
Loading...
使用SqlServer警報的疑難問題解決

如果你在使用Microsoft Sql Server中警報(Alerts)遇到了問題,請你查看這篇文章以獲取可能的解決方案。

1.檢查你是否使用了最新的Sql Server service pack

這是因為在最新的Sql Server service pack中已經修補了很多Sql Server使用警告(Alerts)的漏洞。你應該確保在你的系統中已經安裝了最新的Sql Server service pack補丁包。

2.檢查SqlServerAgent服務的帳戶是否作為成員運行在域用戶群組(Domain User Group)下

LocalSystem帳戶它沒有訪問網絡的權限。所以,如果你需要將事件記錄在其他運行有Windows NT或Windows 2000機器上的應用程序日志上,或者你的作業(jobs)需要跨網絡的資源,或者你需要通過e-mail或者pagers通知操作者,這時候,你就需要將SalServerAgent服務的帳戶設置在域用戶群組(Domain User Group)下作為它的成員。

3.如果所定義的警報都沒有觸發,檢查SqlServerAgent和EventLog服務是否都在運行

如果你需要讓你定義的警報被觸發,這些服務必須被開啟。所以,如果這些服務沒有被運行的話,請運行它們。

4.如果有某個警報沒有被觸發,請確保它們是否被啟用

警報可以被啟用或禁用,為了檢查一個警報是否被啟用,你應該做以下這些步驟:

1.運行Sql Server Enterprise Manager

2.請打開服務器群組,然后打開某個服務器

3.請打開管理(Management),然后再打開Sql Server Agent

4.雙擊合適的警報以查看這個警報是否被啟用了

5.檢查警報的歷史值以確定警報最后工作的日期和時間

為了檢查一個警報的歷史值,你應該做以下這些事情:

1.運行Sql Server Enterprise Manager

2.請打開服務器群組,然后打開某個服務器

3.請打開管理(Management),然后再打開Sql Server Agent

4.雙擊合適的警報以查看警報的歷史值

6.核對每20秒維護的計數器值

因為Sql Server Agent每20秒間隔維護一個性能計數器,如果發現這個性能計數器只有幾秒鐘(少于20秒)才維護一次,那么極有可能你的這個警報將不會被觸發。

7.檢查Sql Server錯誤日志,Sql Server Agent錯誤日志以及Windows NT和Windows 2000的應用程序日志以獲得有關錯誤描述的更多詳細信息

仔細檢查核對當產生警報失敗事件時,被記錄在Sql Server錯誤日志,Sql Server Agent錯誤日志以及Windows NT和Windows 2000的應用程序日志中的日期和時間以及對錯誤的描述能幫助你分析產生警報失敗事件的原因。

8.如果警報被觸發了,但是這時候操作員卻沒有收到任何通知,請嘗試手動使用"e-mail","pager"或者用"net send"將信息發送給操作員

在很多情況下,你輸入了一個錯誤的"e-mail","pager"地址,或者"net send"了一個錯誤的地址,就會產生標題所描述的這個問題。如果你要手動的使用"e-mail","pager"或者用"net send"將信息發送個操作員,請檢查運行其下的Sql Server Agent的帳戶,并且也要核對在日程表中有關操作員的信息。

9.如果警報被觸發了,但是操作員沒有能及時的收到通知,請減少這個警報"Delay between responses"的設置,然后將信息發送給少數的操作員以作為測試

為了減少這個警報的"Delay between responses"設置,你應該做以下這些事:

1.運行Sql Server Enterprise Manager

2.請打開服務器群組,然后打開某個服務器

3.請打開管理(Management),然后再打開Sql Server Agent

4.雙擊合適的警報,并且選擇"Response"Tab頁

5.指定新的"Delay between response"設置

10.警報不能使用xp_logevent發送e-mail通知或者產生錯誤

這是Sql Server 7.0和Sql Server 2000的bug。如果你定義的這個警報是受限于指定的數據庫而不是master數據庫,就會產生標題所描述的這種情況。為了使它們工作,你可以將警報定義于master數據庫或者所有的數據庫。為了將警報定義于所有的數據庫,你應該按以下步驟來做:

1.運行Sql Server Enterprise Manager

2.請打開服務器群組,然后打開某個服務器

3.請打開管理(Management),然后再打開Sql Server Agent

4.雙擊合適的警報并且在Database name下列列表框中選擇"All Databases"(所有數據庫)

11.當安全審核被啟用時,警報被不正確的觸發了

這是Sql Server 7.0和Sql Server 2000的bug。這個bug在Sql Server 2000的service pack 1和Sql Server 7.0的service pack 4中被修補了。為了避免出現以上這個問題,你要將安全審核禁用或者安裝以上所提到的Service Pack。

12.在安裝好了Sql Server 7.0 service pack 3后,你的Sql Server Agent下的警報可能不工作

這是Sql Server 7.0 service pack 3的bug,為了避免出現這個問題,你應該安裝最新的Sql Server 7.0 service pack 4。

13.每20秒對于有關性能狀態的響應就被發送了,而不管對于警報的"Delay between responses"的設置

這是Sql Server 7.0的bug,為了避免出現這個問題,你應該安裝Sql Server 7.0的service pack 1或者更高版本的service pack。

(責任編輯:代君利)

作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗