sys.dm_user_db_resource_governance (Transact-SQL)
Gilt für: SQL Server Azure SQL-Datenbank Azure Synapse Analytics Analytics Platform System (PDW)
Gibt die tatsächlichen Konfigurations- und Kapazitätseinstellungen zurück, die von Ressourcengovernancemechanismen in der aktuellen Datenbank oder dem elastischen Pool verwendet werden.
Gibt für einzelne Datenbanken eine einzelne Zeile für die aktuelle Datenbank zurück. Gibt für elastische Pools eine Zeile für jede Datenbank zurück, in der der Aufrufer die VIEW DATABASE STATE
Berechtigung VIEW DATABASE PERFORMANCE STATE
oder die Zeilen für alle Datenbanken im elastischen Pool enthält, wenn der Aufrufer die Berechtigung oder VIEW SERVER PERFORMANCE STATE
die VIEW SERVER STATE
Berechtigung enthält.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
database_id | int | ID der Datenbank, eindeutig innerhalb einer Datenbank oder innerhalb eines elastischen Pools, aber nicht innerhalb eines logischen Servers. Ausführliche Informationen finden Sie unter DB_ID. |
logical_database_guid | uniqueidentifier | Ein eindeutiger Bezeichner für eine Benutzerdatenbank, die über die Lebensdauer einer Benutzerdatenbank unverändert bleibt. Wenn Sie die Datenbank umbenennen oder ihr Ziel auf Dienstebene ändern, wird dieser Wert nicht geändert. |
physical_database_guid | uniqueidentifier | Ein eindeutiger Bezeichner für die aktuelle physische Datenbank, die der Benutzerdatenbank entspricht. Wenn Sie das Ziel der Datenbankdienstebene ändern, wird dieser Wert geändert. |
server_name | nvarchar | Logischer Servername. |
database_name | nvarchar | Benutzerdatenbankname. |
slo_name | nvarchar | Ziel der Serviceebene, einschließlich Der Hardwaregenerierung. |
dtu_limit | int | DTU-Grenzwert der Datenbank (NULL für vCore). |
cpu_limit | int | vCore-Grenzwert der Datenbank (NULL für DTU-Datenbanken). |
min_cpu | tinyint | Der MIN_CPU_PERCENT Wert des Ressourcenpools für die Benutzerauslastung. Siehe Ressourcenpoolkonzepte. |
max_cpu | tinyint | Der MAX_CPU_PERCENT Wert des Ressourcenpools für die Benutzerauslastung. Siehe Ressourcenpoolkonzepte. |
cap_cpu | tinyint | Der CAP_CPU_PERCENT Wert des Ressourcenpools für die Benutzerauslastung. Siehe Ressourcenpoolkonzepte. |
min_cores | smallint | Nur zur internen Verwendung. |
max_dop | smallint | Der MAX_DOP Wert für die Benutzerarbeitsauslastungsgruppe. Siehe CREATE WORKLOAD GROUP. |
min_memory | int | Der MIN_MEMORY_PERCENT Wert des Ressourcenpools für die Benutzerauslastung. Siehe Ressourcenpoolkonzepte. |
max_memory | int | Der MAX_MEMORY_PERCENT Wert des Ressourcenpools für die Benutzerauslastung. Siehe Ressourcenpoolkonzepte. |
max_sessions | int | Die maximale Anzahl von Sitzungen, die in der Benutzerarbeitsauslastungsgruppe zulässig sind. |
max_memory_grant | int | Der REQUEST_MAX_MEMORY_GRANT_PERCENT Wert für die Benutzerarbeitsauslastungsgruppe. Siehe CREATE WORKLOAD GROUP. |
max_db_memory | int | Nur zur internen Verwendung. |
govern_background_io | bit | Nur zur internen Verwendung. |
min_db_max_size_in_mb | bigint | Der mindeste max_size Wert für eine Datendatei in MB. Siehe sys.database_files. |
max_db_max_size_in_mb | bigint | Der maximale max_size Wert für eine Datendatei in MB. Siehe sys.database_files. |
default_db_max_size_in_mb | bigint | Der Standardmäßige max_size Wert für eine Datendatei in MB. Siehe sys.database_files. |
db_file_growth_in_mb | bigint | Standardwachstumsschritt für eine Datendatei in MB. Siehe sys.database_files. |
initial_db_file_size_in_mb | bigint | Standardgröße für neue Datendatei in MB. Siehe sys.database_files. |
log_size_in_mb | bigint | Standardgröße für neue Protokolldatei in MB. Siehe sys.database_files. |
instance_cap_cpu | int | Nur zur internen Verwendung. |
instance_max_log_rate | bigint | Grenzwert für die Protokollgenerierungsrate für die SQL Server-Instanz in Byte pro Sekunde. Gilt für alle von der Instanz generierten Protokolle, einschließlich tempdb und andere Systemdatenbanken. Gilt in einem elastischen Pool für das Protokoll, das von allen Datenbanken im Pool generiert wird. |
instance_max_worker_threads | int | Arbeitsthreadgrenzwert für die SQL Server-Instanz. |
replica_type | int | Replikattyp, wobei 0 "Primär" und "1" "Sekundär" ist. |
max_transaction_size | bigint | Max. Protokollspeicherplatz, der von jeder Transaktion in KB verwendet wird. |
checkpoint_rate_mbps | int | Nur zur internen Verwendung. |
checkpoint_rate_io | int | Nur zur internen Verwendung. |
last_updated_date_utc | datetime | Datum und Uhrzeit der letzten Einstellungsänderung oder Neukonfiguration in UTC. |
primary_group_id | int | Workload-Gruppen-ID für die Benutzerarbeitsauslastung für primäre Replikate und sekundäre Replikate. |
primary_group_max_workers | int | Arbeitsthreadgrenzwert für die Benutzerarbeitsauslastungsgruppe. |
primary_min_log_rate | bigint | Minimale Protokollrate in Byte pro Sekunde auf Benutzerarbeitsauslastungsgruppenebene. Die Ressourcengovernance versucht nicht, die Protokollrate unter diesem Wert zu reduzieren. |
primary_max_log_rate | bigint | Maximale Protokollrate in Byte pro Sekunde auf Benutzerarbeitsauslastungsgruppenebene. Ressourcengovernance lässt die Protokollrate über diesem Wert nicht zu. |
primary_group_min_io | int | Minimale IOPS für die Benutzerarbeitsauslastungsgruppe. Die Ressourcengovernance versucht nicht, IOPS unter diesem Wert zu reduzieren. |
primary_group_max_io | int | Maximale IOPS für die Benutzerarbeitsauslastungsgruppe. Die Ressourcengovernance lässt IOPS über diesem Wert nicht zu. |
primary_group_min_cpu | float | Minimale CPU-Prozent für die Benutzerauslastungsgruppenebene. Ressourcengovernance versucht nicht, die CPU-Auslastung unter diesem Wert zu verringern. |
primary_group_max_cpu | float | Maximale CPU-Prozent für die Benutzerauslastungsgruppenebene. Ressourcengovernance lässt keine CPU-Auslastung über diesem Wert zu. |
primary_log_commit_fee | int | Protokollsatz-Commit-Gebühr für die Benutzerarbeitsauslastungsgruppe in Byte. Eine Commitgebühr erhöht die Größe jedes Protokoll-E/A um einen festen Wert nur für die Protokollsatzbuchhaltung. Der tatsächliche Protokoll-E/A-Speicher wird nicht erhöht. |
primary_pool_max_workers | int | Arbeitsthreadlimit für den Ressourcenpool der Benutzerarbeitsauslastung. |
pool_max_io | int | Maximale IOPS-Grenze für den Ressourcenpool der Benutzerauslastung. |
govern_db_memory_in_resource_pool | bit | Nur zur internen Verwendung. |
volume_local_iops | int | Nur zur internen Verwendung. |
volume_managed_xstore_iops | int | Nur zur internen Verwendung. |
volume_external_xstore_iops | int | Nur zur internen Verwendung. |
volume_type_local_iops | int | Nur zur internen Verwendung. |
volume_type_managed_xstore_iops | int | Nur zur internen Verwendung. |
volume_type_external_xstore_iops | int | Nur zur internen Verwendung. |
volume_pfs_iops | int | Nur zur internen Verwendung. |
volume_type_pfs_iops | int | Nur zur internen Verwendung. |
user_data_directory_space_quota_mb | int | Maximaler lokaler Speicher für die Datenbankmodulinstanz. Siehe Speicherplatzgovernance |
user_data_directory_space_usage_mb | int | Aktueller lokaler Speicherverbrauch durch Datendateien, Transaktionsprotokolldateien und "tempdb"-Dateien. Wird alle fünf Minuten aktualisiert. |
bufferpool_extension_size_gb | int | Nur zur internen Verwendung. |
pool_max_log_rate | bigint | Maximale Protokollrate in Byte pro Sekunde auf Benutzerressourcenpoolebene. Die Ressourcengovernance lässt nicht zu, dass die Gesamtprotokollrate für alle Workloadgruppen im Ressourcenpool über diesem Wert liegt. |
primary_group_max_outbound_connection_workers | int | Threadlimit für ausgehende Verbindungsmitarbeiter für die primäre Benutzerauslastungsgruppe. |
primary_pool_max_outbound_connection_workers | int | Threadlimit des Arbeitsthreads für ausgehende Verbindungen für den Ressourcenpool der Benutzerarbeitsauslastung. |
replica_role | tinyint | Stellt die aktuelle Replikatrolle dar. 0 - Primäre 1 - Hohe Verfügbarkeit (HA) secondary 2 - Geo-replication forwarder 3 - Named replica Reports 1 when connected with ReadOnly intent to any les secondary. Wenn eine Verbindung mit einer geo-sekundären Verbindung hergestellt wird, ohne ReadOnly-Absicht anzugeben, meldet 2, um eine Verbindung mit einer Georeplikationsweiterleitung darzustellen. Wenn sie eine Verbindung mit einem benannten Replikat herstellen, ohne ReadOnly-Absicht anzugeben, meldet 3. |
Berechtigungen
Für die SQL-Datenbank-Ziele Basic, S0 und S1 sowie für Datenbanken in Pools für elastische Datenbanken ist das Konto des Serveradministrators oder des Microsoft Entra-Administratorkontos oder die Mitgliedschaft in der ##MS_ServerStateReader##
Serverrolle erforderlich. Für alle anderen SQL-Datenbank-Dienstziele ist entweder die VIEW DATABASE STATE
-Berechtigung für die Datenbank oder die Mitgliedschaft in der ##MS_ServerStateReader##
-Serverrolle erforderlich.
Hinweise
Beschreibung der Ressourcengovernance in Azure SQL-Datenbank finden Sie unter SQL-Datenbank Ressourcengrenzwerte.
Wichtig
Die meisten von diesem DMV zurückgegebenen Daten sind für den internen Verbrauch vorgesehen und können jederzeit geändert werden.
Beispiele
Die folgende Abfrage, die im Kontext einer Benutzerdatenbank ausgeführt wird, gibt die maximale Protokollrate und maximale IOPS auf Benutzerarbeitsauslastungsgruppe und Ressourcenpoolebene zurück. Für eine einzelne Datenbank wird eine Zeile zurückgegeben. Für eine Datenbank in einem Pool für elastische Datenbanken wird eine Zeile für jede Datenbank im Pool zurückgegeben.
SELECT database_name,
primary_group_id,
primary_max_log_rate,
primary_group_max_io,
pool_max_io
FROM sys.dm_user_db_resource_governance
ORDER BY database_name;
Nächste Schritte
- Ressourcenkontrolle
- sys.dm_resource_governor_resource_pools (Transact-SQL)
- sys.dm_resource_governor_workload_groups (Transact-SQL)
- sys.dm_resource_governor_resource_pools_history_ex (Transact-SQL)
- sys.dm_resource_governor_workload_groups_history_ex (Azure SQL-Datenbank)
- Governance der Transaktionsprotokollrate
- DTU-Ressourcenbeschränkungen für einzelne Datenbanken
- Ressourcenbeschränkungen für einzelne Datenbanken
- Flexible Pool-vCore-Ressourcenbeschränkungen