Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Überwachen Sie die SQL-Datenbank über SP_WhoIsActive oder FogLight | Fehlerbehebung bei der SQL Server-Leistung -1

Hallo,

Ich werde in dieser Artikelserie erläutern, wie Leistungsprobleme von SQL Server behoben werden können.

Fehlerbehebung bei der SQL Server-Leistung

Es wird erwartet , dass es Leistungsprobleme durch den DBA ( Datenbankadministrator ) löst , wenn Leistungsbeschwerden in der SQL Server - Datenbank zunehmen . Bevor Sie das Leistungsproblem beheben können, müssen Sie feststellen, was das Problem ist und warum es auftritt.

SQL Server-Datenbank über SP_WhoIsActive überwachen

Eine oder mehrere der folgenden Aktionen sollten verwendet werden, um das Problem zu identifizieren.

  1. Überwachen Sie die Datenbank über SP_WhoIsActive oder FogLight usw. Software von Drittanbietern
  2. Datenbank und Instanzen über die Aktivitätsüberwachung überwachen
  3. Leistungsindikatoren über PERFMON überwachen und den Laststatus untersuchen
  4. Überprüfen Sie die SQL Server-Fehlerprotokolldatei
  5. Verwenden Sie DMV (Dynamic Management View) und DMF (Dynamic Management Function), um die Datenbank im Detail zu analysieren
  6. Echtzeitaktivitäten in einer Datenbank mit SQL Server Profiler untersuchen
  7. Prüfen Sie die Datenbank im Detail und erstellen Sie Berichte über SQLDIAG und das RML-Hilfsprogramm
  8. Leistungsprobleme beheben

Datenbank über FogLight überwachen

DBA (Datenbankadministrator) sollte die Datenbank für immer in Echtzeit überwachen. Eine Echtzeitüberwachung der Datenbank ist über Echtzeitüberwachungssoftware wie FogLight oder gespeicherte Prozeduren wie SP_WhoIsActive möglich.

Foglight bietet eine GUI und einige nützliche Echtzeitüberwachungen und -warnungen. Aber es ist nicht kostenlos und wenn Sie an Ihr Unternehmen denken und viele kritische Datenbanken haben, empfehle ich Ihnen, dass Sie diese Software verwenden können, um Datenbanken in Echtzeit zu überwachen.

Aber wenn es kein Budget dafür gibt und Ihr Unternehmen nicht groß ist. Verwenden Sie es nicht, weil es sehr teuer ist.

Ich empfehle Ihnen, SP_WhoIsActive zu erstellen und die Datenbank über diese gespeicherte Prozedur zu überwachen. Die gespeicherte Prozedur SP_WhoIsActive, geschrieben von Adam Mechaniker, ist kostenlos verfügbar und liefert Informationen über die aktuellen Session-Sessions und SQLs. Nachdem Sie SP_WhoIsActive manuell in der Datenbank erstellt haben, können Sie es wie folgt ausführen.

Sie können die folgenden kritischen und wichtigen Funktionen jeder Sitzung über SP_WhoIsActive überprüfen.

  • SQL-Text
  • Warte Info
  • Sitzungsstatus blockieren
  • CPU-Auslastung
  • TempDB-Zuweisung
  • Sitzungsdauer und Anmeldezeit
  • Anmeldename und Computername
  • Prozent abgeschlossen
  • Status

Sie können die neueste Version von SP_WhoIsActive über diesen Link herunterladen.

Laden Sie SP_WhoIsActive herunter und kopieren Sie diese SP in SSMS (SQL Server Management Studio) und führen Sie sie aus und erstellen Sie SP_WhoIsActive, dann können Sie es verwenden.

Überprüfen Sie die SQL Server-Fehlerprotokolldatei

Fehler, die auf den SQL Server-Instanzen auftreten, können durch Untersuchen der Fehlerprotokolle gefunden werden. Sie können die Fehlerprotokolle aus der Datenbank wie folgt einsehen.

Wenn Sie nicht auf die Instanz zugreifen können, finden Sie die Fehlerprotokolldateien im folgenden Standardpfad.

C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log

Ich werde die Fehlerbeseitigung bei der SQL Server-Leistung im nächsten Artikel weiter erläutern.