Aktive Abfragen überwachen

Auf dieser Seite wird beschrieben, wie Sie die in Ihrer Datenbank aktiven Abfragen überwachen und Fehler beheben. Mit dem Monitoring dieser Abfragen können Sie Ursachen für Systemlatenz und hohe CPU-Auslastung erkennen.

Im Query Insights-Dashboard können Sie eine Zusammenfassung der aktiven Transaktionen und eine Liste der Transaktionen mit zugehörigen Abfragen und Statistiken aufrufen. Die Transaktionen werden nach der Startzeit der Transaktion angezeigt. Wenn sehr viele Abfragen ausgeführt werden, sind die Ergebnisse möglicherweise auf eine Teilmenge der Gesamtabfragen beschränkt.

Hinweis

Zum Überwachen aktiver Abfragen können Sie entweder die Cloud SQL Enterprise Edition oder die Cloud SQL Enterprise Plus Edition verwenden.

Wenn Sie eine Sitzung oder eine lang andauernde Transaktion in aktiven Abfragen beenden möchten, müssen Sie die Cloud SQL Enterprise Plus Edition für Ihre Cloud SQL-Instanz verwenden.

Weitere Informationen zu den Cloud SQL-Versionen finden Sie unter Einführung in die Cloud SQL-Versionen.

Erforderliche Rollen und Berechtigungen

Bitten Sie Ihren Administrator, Ihnen die folgenden IAM-Rollen für das Projekt zuzuweisen, in dem die Cloud SQL-Instanz gehostet wird, damit Sie die Berechtigungen zum Aufrufen aktiver Abfragen erhalten:

Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

Diese vordefinierten Rollen enthalten die Berechtigungen, die zum Aufrufen aktiver Abfragen erforderlich sind. Maximieren Sie den Abschnitt Erforderliche Berechtigungen , um die notwendigen Berechtigungen anzuzeigen, die erforderlich sind:

Erforderliche Berechtigungen

Zum Aufrufen aktiver Abfragen sind die folgenden Berechtigungen erforderlich:

  • Zusammenfassung der Datenbankaktivität und lang andauernde Transaktionen ansehen:
    • databaseinsights.activeQueries.fetch
    • databaseinsights.activitySummary.fetch

Sie können diese Berechtigungen auch mit benutzerdefinierten Rollen oder anderen vordefinierten Rollen erhalten.

Aktive Abfragen aktivieren

Wenn Sie Query Insights aktivieren, werden aktive Abfragen automatisch aktiviert. Wenn Sie eine Sitzung oder eine lang andauernde Transaktion in aktiven Abfragen beenden möchten, müssen Sie Query Insights für die Cloud SQL Enterprise Plus Edition verwenden.

Aktive Abfragen deaktivieren

Sie können aktive Abfragen nicht deaktivieren, ohne Query Insights zu deaktivieren. Informationen zum Deaktivieren aktiver Abfragen und Query Insights finden Sie unter Query Insights deaktivieren.

Aktive Abfragen ansehen

So rufen Sie Ihre aktiven Abfragen auf:

  1. Öffnen Sie in der Google Cloud Console die Cloud SQL-Instanzen Seite.

    Cloud SQL-Instanzen aufrufen

  2. Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.

  3. Führen Sie einen der folgenden Schritte aus, um das Dashboard Query Insights aufzurufen:

    • Wählen Sie den Tab Query Insights aus.
    • Zu „Query Insights“ für ausführliche Informationen über Abfragen und zur Leistung Das Dashboard Query Insights wird geöffnet. Oben werden Details zur Instanz angezeigt.
  4. Klicken Sie auf den Tab Aktive Abfragen.

    Von hier aus können Sie die Abfrageinformationen ändern, die in der Tabelle Am längsten laufende Transaktionen angezeigt werden:

    • Datenbanken: Filtert die Abfragelast für eine bestimmte Datenbank oder für alle Datenbanken.
    • Nutzer: Filtert die Abfragelast aus einem bestimmten Nutzerkonto.
    • Zusammenfassung aller aktiven Abfragen: Hier finden Sie einen Überblick über alle aktiven Abfragen, wobei die Gesamtzahl der Verbindungen basierend auf den folgenden Parametern angezeigt wird:

      1. Verteilung der aktiven Verbindungen, die nach Verbindungsstatus kategorisiert sind.
      2. Verteilung der aktiven Transaktionen nach dem Transaktionsstatus.
      3. Verteilung der Abfragedauer.
    • Am längsten laufende Transaktionen: Bietet einen Überblick über die 50 am häufigsten ausgeführten Abfragen (im Status aktiv) basierend auf absteigender Ausführungszeit. Sie können aktive Abfragen in der Tabelle filtern und sortieren.

Normalisierte aktive Abfragen ansehen

Sie können eine Liste der lang andauernden Transaktionen mit normalisierten aktiven Abfragen im Dashboard Query Insights aufrufen. Eine normalisierte aktive Abfrage entfernt sensible Daten und gibt einen Digest zurück. Der Digest ist für verschiedene Werte identisch, die im folgenden Beispiel verwendet werden:

  • Reguläre Abfragen

    • select * from test_table where id=1;
    • select * from test_table_where id=2;
  • Digest- oder normalisierte Abfrage

    • select * from test_table where id=?;

Eine Abfrage, die in verschiedenen Sitzungen ausgeführt wird, wird im Dashboard als unterschiedliche Einträge angezeigt.

Am längsten laufende Transaktionen ansehen

Die Tabelle Am längsten laufende Transaktionen im Dashboard Query Insights enthält die folgenden Spalten:

Spaltenname Beschreibung
Prozess-ID Eindeutige Kennzeichnung der Verbindung.
Abfrage SQL-Abfragetext.
Transaktionsstatus Der aktuelle Status der Ausführung der Transaktion. Zulässige Werte sind: RUNNING, LOCK WAIT, ROLLING BACK und COMMITTING.
Thread-Status Der Thread-Status (oder Abfragestatus) gibt den aktuellen Status des aktiven Threads an.
Beginn der Transaktion Der Zeitstempel, als die Ausführung der Transaktion gestartet wurde.
Transaktionsdauer Die Dauer der aktuell aktiven Transaktion in Sekunden.
Transaktionswartezeit Die Wartezeit in Sekunden für die aktuelle aktive Transaktion.
Thread-Statusdauer Bei der Abfrage verstrichene Zeit.
Gesperrte Transaktionszeilen Anzahl der Zeilen, die von der aktuellen aktiven Transaktion gesperrt wurden.
Geänderte Transaktionszeilen Anzahl der Zeilen, die von der aktuellen aktiven Transaktion geändert wurden.
Datenbank Datenbankname, auf dem diese Verbindung ausgeführt wird.
Nutzername Name des Nutzers, der mit der Datenbank verbunden ist.
Clientadresse Die IP-Adresse des Clients, von dem aus ein Nutzer eine Verbindung zur Datenbank herstellt.
Aktion Enthält einen Link zum Beenden einer Transaktion.

Die Anzeige wird alle 60 Sekunden automatisch aktualisiert.

Über das vertikale Menü Optionen für die Inhaltsanzeige... können Sie die anzuzeigenden Spalten filtern.

Verbindung beenden

Wenn Sie eine Verbindung oder eine lang andauernde Transaktion in aktiven Abfragen beenden möchten, müssen Sie die Cloud SQL Enterprise Plus Edition verwenden und Query Insights für die Cloud SQL Enterprise Plus Edition aktivieren.

Das Beenden von Vorgängen mit langer Ausführungszeit kann länger dauern.

So beenden Sie eine Abfrage oder Transaktion:

  1. Wählen Sie in der Tabelle Am längsten laufende Transaktion eine Abfrage aus.
  2. Klicken Sie in der Spalte Aktion auf Verbindung beenden.
  3. Klicken Sie im Fenster Verbindung beenden auf Bestätigen.

Eine Datenbankanfrage wird sofort zurückgegeben, während die Beendigung im Hintergrund erfolgt.

Die Seite wird nach dem Start der Beendigung aktualisiert. Wenn die Beendigung fehlschlägt, wird keine Fehlermeldung oder Benachrichtigung zurückgegeben. Die Abfrage wird weiterhin in der Liste der aktiven Abfragen angezeigt. Wenn die Beendigung erfolgreich ist, wird die Abfrage nicht mehr in der Liste angezeigt. Wenn die Beendigung ein Rollback erfordert, zeigt die Spalte Transaktionsstatus den Status ZURÜCKGESTELLT an. Das bedeutet, dass die Beendigung noch läuft.

Nächste Schritte