sp_readerrorlog (Transact-SQL)
Gilt für: SQL Server
Ermöglicht ihnen, den Inhalt der SQL Server- oder SQL Server-Agent Fehlerprotokolldatei zu lesen und nach Schlüsselwörtern zu filtern.
Transact-SQL-Syntaxkonventionen
Syntax
sp_readerrorlog
[ [ @p1 = ] p1 ]
[ , [ @p2 = ] p2 ]
[ , [ @p3 = ] N'p3' ]
[ , [ @p4 = ] N'p4' ]
[ ; ]
Argumente
[ @p1 = ] p1
Der ganzzahlige Wert des Protokolls, das Sie anzeigen möchten. @p1 ist int mit einem Standardwert von 0
. Das aktuelle Fehlerprotokoll hat einen Wert von 0
. Die vorherige ist (ERRORLOG.1
), die vor dem vorherigen ist 1
2 (ERRORLOG.2
) usw.
[ @p2 = ] p2
Der ganzzahlige Wert für das Produkt, dessen Protokoll Sie anzeigen möchten. @p2 ist int, mit einem Standardwert von NULL
. Wird für SQL Server oder 2
SQL Server-Agent verwendet1
. Wenn kein Wert angegeben ist, wird das SQL Server-Produkt verwendet.
[ @p3 = ] N'p3'
Der Zeichenfolgenwert für eine Zeichenfolge, nach der sie beim Anzeigen des Fehlerprotokolls filtern möchten. @p3 ist nvarchar(4000), mit einem Standardwert von NULL
.
[ @p4 = ] N'p4'
Der Zeichenfolgenwert für eine zusätzliche Zeichenfolge, nach der Sie filtern möchten, um die Suche beim Anzeigen des Fehlerprotokolls weiter zu verfeinern. @p4 ist "nvarchar(4000)" mit einem Standardwert von NULL
. Dieser Parameter stellt einen zusätzlichen Filter für die erste Zeichenfolgensuche @p3 bereit.
Rückgabecodewerte
Keine.
Resultset
Zeigt den Inhalt des angeforderten Fehlerprotokolls an. Wenn Filterzeichenfolgen verwendet werden, werden nur die Zeilen angezeigt, die diesen Zeichenfolgen entsprechen.
Hinweise
Jedes Mal, wenn SQL Server gestartet wird, wird das aktuelle Fehlerprotokoll umbenannt ERRORLOG.1
in ; ERRORLOG.1
wird , wird ERRORLOG.2
ERRORLOG.3
uswERRORLOG.2
. sp_readerrorlog
ermöglicht es Ihnen, eine dieser Fehlerprotokolldateien zu lesen, solange die Dateien vorhanden sind.
Berechtigungen
SQL Server 2019 (15.x) und frühere Versionen erfordern DIE VIEW SERVER STATE-Berechtigung auf dem Server.
SQL Server 2022 (16.x) und höhere Versionen erfordern VIEW ANY ERROR LOG-Berechtigung auf dem Server.
Beispiele
Im folgenden Beispiel wird das SQL Server-Fehlerprotokoll gezyklent.
A. Lesen des aktuellen SQL Server-Fehlerprotokolls
EXECUTE sp_readerrorlog;
B. Anzeigen des vorherigen SQL Server-Agent Fehlerprotokolls
EXECUTE sp_readerrorlog 1, 2;
C. Suchen von Protokollmeldungen, die angeben, dass eine Datenbank gestartet wird
EXECUTE sp_readerrorlog 0, 1, 'database', 'start';