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.
Hinweise
Sie können entweder die Cloud SQL Enterprise- oder die Cloud SQL Enterprise Plus-Version verwenden, um aktive Abfragen zu überwachen.
Wenn Sie eine Sitzung oder eine lang laufende Transaktion in aktiven Abfragen beenden möchten, müssen Sie die Cloud SQL Enterprise Plus-Version für Ihre Cloud SQL for SQL Server-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, um die Berechtigungen zu erhalten, die Sie zum Aufrufen aktiver Abfragen benötigen:
-
Zusammenfassung der Instanzaktivität aufrufen:
Cloud SQL-Betrachter (
roles/cloudsql.viewer
) -
Zusammenfassung der Datenbankaktivitäten und langlaufende Transaktionen aufrufen:
Database Insights-Betrachter (
roles/databaseinsights.viewer
) -
So beenden Sie eine Sitzung oder eine lang laufende Transaktion:
-
Cloud SQL-Bearbeiter (
roles/cloudsql.editor
) -
Database Insights Operations Admin (
roles/databaseinsights.operationsAdmin
)
-
Cloud SQL-Bearbeiter (
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. Erweitern Sie den Abschnitt Erforderliche Berechtigungen, um die erforderlichen Berechtigungen anzuzeigen:
Erforderliche Berechtigungen
Die folgenden Berechtigungen sind erforderlich, um aktive Abfragen aufzurufen:
-
So rufen Sie eine Zusammenfassung der Datenbankaktivitäten und lang laufende Transaktionen auf:
-
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 Abfragestatistiken aktivieren, werden aktive Abfragen automatisch aktiviert. Wenn Sie eine Sitzung oder eine lang laufende Transaktion in aktiven Abfragen beenden möchten, müssen Sie Query Insights für die Cloud SQL Enterprise Plus-Version verwenden.
Aktive Abfragen deaktivieren
Sie können aktive Abfragen nicht deaktivieren, ohne auch Statistiken zu Abfragen zu deaktivieren. Informationen zum Deaktivieren aktiver Abfragen und Abfragestatistiken finden Sie unter Abfragestatistiken deaktivieren.
Aktive Abfragen ansehen
So rufen Sie Ihre aktiven Abfragen auf:
Google Cloud Rufen Sie in der Console die Seite Cloud SQL-Instanzen auf.
Klicken Sie auf den Instanznamen, um die Übersichtsseite einer Instanz zu öffnen.
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.
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.
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 Abfragestatistiken enthält die folgenden Spalten:
Spaltenname | Beschreibung |
---|---|
Sitzungs-ID | Eindeutige Kennung der Sitzung. |
Abfrage | SQL-Abfragetext. |
Sitzungsstatus | Der Status der Sitzung. |
Abfragedauer | Wie lange die Abfrage ausgeführt wird. |
Warteereignistyp | Der Typ des Warteereignisses, wenn die Anfrage für die Abfrageausführung blockiert ist. |
ID der blockierenden Sitzung | Die ID der Sitzung, die die Sitzung blockiert. |
Transaktionswartezeit | Die Dauer der aktuellen Wartezeit, wenn die Sitzung blockiert ist. |
Geänderte Transaktionszeilen | Anzahl der Zeilen, die mit dieser Abfrage an den Client zurückgegeben wurden. |
% abgeschlossen | Prozentsatz der abgeschlossenen Arbeit, falls die Abfrage den Fortschritt meldet. |
Datenbank | Datenbank, in der die Sitzung ausgeführt wird. |
Name der Anwendung | Name der Anwendung, die die Sitzung initiiert hat. |
Nutzer | Name des Nutzers, der mit der Datenbank verbunden ist. |
Clientadresse | Die IP-Adresse des Clients, der eine Abfrage gesendet hat. |
Aktion | Enthält einen Link zum Beenden einer Sitzung. |
Die Anzeige wird alle 60 Sekunden automatisch aktualisiert.
Sitzung beenden
Wenn Sie eine Sitzung oder eine lang laufende Transaktion beenden möchten, müssen Sie die Cloud SQL Enterprise Plus-Version verwenden und Abfragestatistiken für die Cloud SQL Enterprise Plus-Version aktivieren.
Bei langwierigen Vorgängen kann die Beendigung länger dauern.
So beenden Sie eine Abfrage oder Transaktion:
- Wählen Sie in der Tabelle Am längsten laufende Transaktion eine Abfrage aus.
- Klicken Sie in der Spalte Aktion auf Sitzung beenden.
- Klicken Sie im Fenster Sitzung beenden auf Bestätigen.