sp_readerrorlog (Transact-SQL)
適用於:SQL Server
可讓您讀取 SQL Server 或 SQL Server Agent 錯誤記錄檔的內容,並篩選關鍵詞。
語法
sp_readerrorlog
[ [ @p1 = ] p1 ]
[ , [ @p2 = ] p2 ]
[ , [ @p3 = ] N'p3' ]
[ , [ @p4 = ] N'p4' ]
[ ; ]
引數
[ @p1 = ] p1
您要檢視之記錄檔的整數值。 @p1為 int,預設值為 0
。 目前的錯誤記錄檔值為 0
。 前一個是 1
(ERRORLOG.1
),前一個是 2 (ERRORLOG.2
),依故。
[ @p2 = ] p2
您要檢視其記錄之產品的整數值。 @p2為 int,預設值為 NULL
。 用於 1
SQL Server 或 2
SQL Server Agent。 如果未指定值,則會使用 SQL Server 產品。
[ @p3 = ] N'p3'
檢視錯誤記錄檔時要篩選之字串的字串值。 @p3為 nvarchar(4000),預設值為 NULL
。
[ @p4 = ] N'p4'
您想要篩選之其他字串的字串值,以在檢視錯誤記錄檔時進一步精簡搜尋。 @p4為 nvarchar(4000),預設值為 NULL
。 此參數會提供第一個字串搜尋 @p3的額外篩選。
傳回碼值
無。
結果集
顯示所要求錯誤記錄檔的內容。 如果使用篩選字串,則只會顯示符合這些字串的行。
備註
每次啟動 SQL Server 時,目前的錯誤記錄檔都會重新命名為 ERRORLOG.1
; ERRORLOG.1
變成 ERRORLOG.2
、 ERRORLOG.2
變成 ERRORLOG.3
等等。 sp_readerrorlog
可讓您讀取這些錯誤記錄檔中的任何一個,只要檔案存在。
權限
的執行許可權sp_readerrorlog
僅限於系統管理員固定伺服器角色的成員。
範例
下列範例會迴圈 SQL Server 錯誤記錄檔。
A. 讀取目前的 SQL Server 錯誤記錄檔
EXEC sp_readerrorlog;
B. 顯示先前的 SQL Server Agent 錯誤記錄檔
EXEC sp_readerrorlog 1, 2;
C. 尋找指出資料庫正在啟動的記錄訊息
EXEC sp_readerrorlog 0, 1, 'database', 'start';