SQL Server sp_readErrorlog

SQL Server sp_readErrorlog

Protokolle beziehen sich auf eine Reihe von Datensätzen, die von einer Anwendung erstellt wurden, um die Details der Ereignisse und Aktionen der Anwendung zu beschreiben. Nahezu alle Anwendungen implementieren einen Protokollierungsmechanismus, um den Entwicklern und Benutzern bei der Fehlerbehebung bei den auftretenden Fehlern zu helfen.

Wie Sie erraten können, bietet SQL Server uns Protokolle, mit denen wir die Ereignisse, die auf dem Server auftreten. In einigen Fällen können Sie die SQL Server -Protokolle verwenden, um einen Datenbankfehler wiederherzustellen.

In diesem Tutorial wird beschrieben.

SP_ReadErrorLogs () -Verfahrensyntax

Das Folgende zeigt die Syntax des von SQL Server gespeicherten Prozedurs SQL Server:

sp_readErrorlog
@p1 int = 0,
@p2 int = null,
@p3 nvarchar (4000) = null,
@p4 nvarchar (4000) = null

Akzeptierte Argumente

Das Verfahren akzeptiert die folgenden Argumente, die in der angegebenen Syntax definiert sind:

  1. @P1 - Dies definiert das Protokoll, das Sie als Ganzzahlwert anzusehen möchten. Das aktuelle Fehlerprotokoll hat einen Wert von 0, den zuvor einen Wert von 1, das zweite mit einem Wert von 2 usw.
  2. @P2 - Mit dem P2 -Parameter können Sie das Produkt definieren, dessen Protokolle das sind, was Sie als Ganzzahlwert mit 1 für SQL Server und 2 für SQL Server Agent ansehen möchten. Standardmäßig gibt die Prozedur die Protokolle für den SQL -Server zurück.
  3. @P3 - Mit dem P3 -Parameter können Sie die Zeichenfolge definieren, in der Sie beim Abrufen der Protokolle filtern möchten. Standardmäßig ist dieser Wert null.
  4. @p4 - Mit dem P4 -Parameter können Sie schließlich eine zweite Zeichenfolge definieren, die beim Filtern der Protokolle gesucht wird. Dies ist nützlich, wenn Sie Ihr Suchmuster verfeinern müssen.

Die Funktion gibt dann den Inhalt des Fehlerprotokolls zurück und entspricht dem spezifischen Muster.

SQL Server erstellt ein Fehlerprotokoll für jede Instanz, mit der der Server gestartet wird. Die Fehlerprotokolle werden als FehlerLog1, ERRAGELOG2, ERRAGELOG3 usw. bezeichnet.

Beispiel Verwendung:

Die folgenden Beispiele zeigen, wie wir das gespeicherte Verfahren von SP_ReadErrorlog verwenden können, um die verfügbaren Protokolle zu lesen.

Verwenden Sie die SP_ReadErrorLog (), um das aktuelle Fehlerprotokoll zu lesen

Das folgende Beispiel verwendet das SP_ReadErrorLog (), um das aktuelle Fehlerprotokoll zu lesen:

Exec sp_readErrorlog;

Ohne Parameter gibt die vorherige Abfrage das aktuelle Fehlerprotokoll für den SQL -Server zurück.

Ein Beispielausgang ist wie folgt:

Verwenden Sie die SP_ReadErrorLog (), um den Fehler in einem bestimmten Index zu lesen

Um den FehlerLog3 für SQL Server zu lesen, können wir die Abfrage wie folgt ausführen:

Exec sp_readErrorlog 3, 1;

In diesem Fall sollte die Prozedur den Inhalt der FehlerLog3 -Datei für den SQL -Server zurückgeben.

Suchen Sie das Protokoll mit einer bestimmten Zeichenfolge

Um die Protokolle mit einer bestimmten Zeichenfolge zu filtern, können wir die folgende Abfrage ausführen:

Exec sp_readErrorlog 5, 1, 'starten', 'Master';

In diesem Fall sollte die vorherige Abfrage die Protokolle zurückgeben, wenn die Master -Datenbank beginnt. Eine Beispielausgabe ist wie im Folgenden dargestellt:

LogDate | ProcessInfo | Text |
-----------------------+-----------+------------------------------+
2022-10-17 14:44:28.550 | SPID9S | Datenbank Starten "Master".|

Abschluss

In diesem Artikel haben Sie gelernt.

Danke fürs Lesen!