sys.database_connection_stats (Azure SQL-Datenbank)
Gilt für: Azure SQL-Datenbank
Enthält Statistiken zu SQL-Datenbank Datenbankkonnektivitätsereignissen, die einen Überblick über Erfolge und Fehler der Datenbankverbindung bieten. Weitere Informationen zu Verbindungsereignissen finden Sie unter Ereignistypen in sys.event_log (Azure SQL-Datenbank).
Statistik | Typ | Beschreibung |
---|---|---|
database_name | sysname | Der Name der Datenbank. |
start_time | datetime2 | UTC-Datum und -Zeit des Beginns des Aggregationsintervalls. Die Uhrzeit ist immer ein Vielfaches von 5 Minuten. Zum Beispiel: '2022-03-30 16:00:00' '2022-03-30 16:05:00' '2022-03-30 16:10:00' |
end_time | datetime2 | UTC-Datum und -Zeit des Endes des Aggregationsintervalls. End_time ist immer genau 5 Minuten später als die entsprechende start_time in derselben Zeile. |
success_count | int | Anzahl erfolgreicher Verbindungen. |
total_failure_count | int | Gesamtzahl fehlerhafter Verbindungen. Dies ist die Summe von connection_failure_count, terminated_connection_count und throttled_connection_count und enthält keine Deadlock-Ereignisse. |
connection_failure_count | int | Anzahl der Anmeldefehler. |
terminated_connection_count | int | Diese Spalte ist nicht verwendet und wird aus Gründen der Abwärtskompatibilität beibehalten. |
throttled_connection_count | int | Diese Spalte ist nicht verwendet und wird aus Gründen der Abwärtskompatibilität beibehalten. |
Hinweise
Ereignisaggregation
Die Ereignisinformationen für diese Sicht werden gesammelt und innerhalb von 5-minütigen Intervallen aggregiert. Die Anzahlspalten stellen die Häufigkeit dar, mit der ein bestimmtes Konnektivitätsereignis für eine bestimmte Datenbank innerhalb eines angegebenen Zeitintervalls aufgetreten ist.
Wenn ein Benutzer beispielsweise am 30. März 2022 (UTC) sieben Mal zwischen 11:00 und 11:05 Uhr eine Verbindung mit Datenbankdatenbank1 herstellen kann, stehen diese Informationen in dieser Ansicht in einer einzigen Zeile zur Verfügung:
database_name | start_time | end_time | success_count | total_failure_count | connection_failure_count | terminated_connection_count | throttled_connection_count |
---|---|---|---|---|---|---|---|
Database1 |
2022-03-30 11:00:00 |
2022-03-30 11:05:00 |
0 |
7 |
7 |
0 |
0 |
start_time und end_time des Intervalls
Ein Ereignis ist in einem Aggregationsintervall enthalten, wenn das Ereignis auf oder nach start_time und vor end_time für dieses Intervall auftritt. Beispielsweise würde ein Ereignis, das genau zum Zeitpunkt 2022-03-30 19:25:00.0000000
eintritt, nur im zweiten unten gezeigten Intervall aufgenommen werden:
start_time end_time
2022-03-30 19:20:00.0000000 2022-03-30 19:25:00.0000000
2022-03-30 19:25:00.0000000 2022-03-30 19:30:00.0000000
Datenupdates
Die Daten in dieser Sicht werden im Zeitverlauf gesammelt. Normalerweise werden die Daten innerhalb einer Stunde nach Beginn des Aggregationsintervalls gesammelt, es kann aber maximal 24 Stunden dauern, bis alle Daten in der Sicht angezeigt werden. Während dieser Zeit werden die Informationen in einer einzelnen Zeile möglicherweise gelegentlich aktualisiert.
Beibehaltung von Daten
Die Daten in dieser Ansicht werden maximal 30 Tage lang aufbewahrt, oder möglicherweise weniger abhängig von der Anzahl der Datenbanken und der Anzahl der eindeutigen Ereignisse, die jede Datenbank generiert. Um diese Informationen für einen längeren Zeitraum beizubehalten, kopieren Sie die Daten in eine separate Datenbank. Nachdem Sie eine erste Kopie der Sicht erstellt haben, werden die Zeilen in der Sicht möglicherweise aktualisiert, während die Daten gesammelt werden. Damit die Kopie der Daten aktuell bleibt, führen Sie regelmäßig einen Tabellenscan der Zeilen aus, um nach einer Erhöhung der Ereignisanzahl für vorhandene Zeilen zu suchen und um neue Zeilen zu ermitteln (eindeutige Zeilen bestimmen Sie anhand der Start- und Endzeiten). Aktualisieren Sie dann die Kopie der Daten mit diesen Änderungen.
Fehler, die nicht enthalten sind
Diese Sicht enthält möglicherweise nicht alle Verbindungs- und Fehlerinformationen:
- Diese Ansicht enthält nicht alle SQL-Datenbank Datenbankfehler, die auftreten können, nur die in Ereignistypen in sys.event_log (Azure SQL-Datenbank) angegebenen.
- Wenn innerhalb des SQL-Datenbank Rechenzentrums ein Computerfehler auftritt, fehlt möglicherweise eine kleine Datenmenge aus der Ereignistabelle.
- Wenn eine IP-Adresse über DoSGuard blockiert wurde, können Verbindungsversuchsereignisse dieser IP-Adresse nicht erfasst werden und werden in dieser Ansicht nicht angezeigt.
Berechtigungen
Erfordert die Berechtigung für den Zugriff auf die Masterdatenbank auf dem logischen Server in Azure SQL-Datenbank.
Beispiele
In diesem Beispiel wird abgefragt , sys.database_connection_stats eine Zusammenfassung der Datenbankverbindungen zurückzugeben, die zwischen Mittag am 29. März 2022 und Mittag am 30. März 2022 (UTC) aufgetreten sind. Stellen Sie eine Verbindung mit der Masterdatenbank auf dem logischen Server in Azure SQL-Datenbank her, um die Abfrage auszuführen.
SELECT database_name, start_time, end_time, success_count, total_failure_count, connection_failure_count
FROM sys.database_connection_stats
WHERE start_time>='2022-03-29 12:00:00' and end_time<='2022-03-30 12:00:00'
ORDER BY start_time ASC;
Nächste Schritte
Weitere Informationen zu Azure SQL-Datenbank finden Sie in den folgenden Artikeln:
- Beheben von Verbindungsproblemen mit der Azure SQL-Datenbank
- Azure SQL-Datenbank-Katalogsichten
- sys.event_log (Azure SQL-Datenbank)
- Diagnostizieren und Behandeln von Problemen mit hoher CPU-Auslastung in Azure SQL-Datenbank
- Verstehen und Beheben von Problemen durch Blockierungen in Azure SQL-Datenbank