Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Performance der Datenbank überwachen und steigern » Praktische Einführungen in die Anwendungsprofilerstellung » Praktische Einführung: Deadlocks diagnostizieren

 

Lektion 4: Daten der Verbindungsblockierungen überprüfen

Der Modus Anwendungsprofil liefert eine grafische Darstellung der Verbindungen, die an einem Deadlock teilnehmen. Er stellt auch das Register Verbindungsblockierungen zur Verfügung, das zusätzliche Informationen über blockierte Verbindungen enthält.

♦  So überprüfen Sie die Daten der Verbindungsblockierungen
  1. Öffnen Sie die Analysedatei, die während der Protokollierungssitzung erstellt wurde.

    1. In Sybase Central wählen Sie Anwendungsprofil » Analysedatei öffnen oder Verbindung zu einer Protokollierungsdatenbank herstellen.

    2. Wählen Sie In einer Protokollierungsdatenbank

    3. Klicken Sie auf Open (Öffnen).

    4. Klicken Sie auf das Register Identifizierung und geben Sie DBA in das Feld Benutzer-ID und sql in das Feld Kennwort ein.

    5. Klicken Sie auf das Register Datenbank und wählen Sie im Feld Datenbankdatei app_profiling.db aus..

    6. Klicken Sie auf OK.

  2. Zeigen Sie die grafische Darstellung des Deadlocks an.

    1. Im Fensterausschnitt Details zur Anwendungsprofilerstellung klicken Sie auf das Register Status und wählen die aktuellste ID in der Liste Protokollierungssitzungs-ID aus.

      Wenn der Fensterausschnitt Details zur Anwendungsprofilerstellung nicht eingeblendet wird, wählen Sie Ansicht » Details zur Anwendungsprofilerstellung.

    2. Am unteren Rand des Fensterausschnitts Details zur Anwendungsprofilerstellung klicken Sie auf das Register Deadlocks. Der aktuellste Deadlock wird angezeigt. Klicken Sie auf die Liste Deadlock, um weitere Deadlocks anzuzeigen.

    Die folgende Illustration zeigt, wie die UPDATE-Anweisungen eine Deadlock-Bedingung erzeugt haben.

Für jede Verbindung wird eine Tabelle mit einem Pfeil zur anderen Verbindung angezeigt.

Jede an einem Deadlock beteiligte Verbindung wird durch eine Tabelle mit den folgenden Feldern dargestellt:

  • Verbindungsname   Dieses Feld zeigt die Benutzer-ID an, die die Verbindung geöffnet hat.

  • SQL-Anweisung   Dieses Feld zeigt die tatsächlich an einem Deadlock beteiligte Anweisung an. In diesem Fall wurde der Deadlock durch die UPDATE-Anweisungen in den Prozeduren bewirkt, die Sie für jede Instanz von Interactive SQL ausgeführt haben.

  • Eigentümer der Verbindungs-ID   Dieses Feld zeigt die ID der Verbindung an, die die aktuelle Verbindung blockiert hat.

  • Datensatz-ID   Dieses Feld zeigt die ID der Zeile an, auf der die aktuelle Verbindung blockiert ist.

  • Rollback-Vorgangsanzahl   Dieses Feld zeigt die Anzahl der Vorgänge an, die aufgrund des Deadlocks zurückgesetzt werden müssen. In diesem Fall enthielten die Prozeduren nur die UPDATE-Anweisungen, daher ist die Anzahl 0.