Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:SQL Server
Azure SQL Managed Instance
Diese Anweisung führt die folgenden Aktionen der Ressourcenverwaltung aus:
- Aktivieren oder Deaktivieren der Ressourcensteuerung.
- Wenden Sie die Konfigurationsänderungen an, die angegeben werden, wenn die anweisungen
CREATE | ALTER | DROP WORKLOAD GROUPoderCREATE | ALTER | DROP RESOURCE POOLoderCREATE | ALTER | DROP EXTERNAL RESOURCE POOLausgeführt werden. - Konfigurieren sie die Klassifizierung für eingehende Sitzungen.
- Zurücksetzen der Statistik für Arbeitsauslastungsgruppen und Ressourcenpools.
- Legen Sie die maximalen E/A-Vorgänge in der Warteschlange pro Datenträgervolume fest.
Transact-SQL-Syntaxkonventionen
Syntax
ALTER RESOURCE GOVERNOR
{ RECONFIGURE
[ WITH
( [ CLASSIFIER_FUNCTION = { schema_name.function_name | NULL } ]
[ [ , ] MAX_OUTSTANDING_IO_PER_VOLUME = value ]
)
]
| DISABLE
| RESET STATISTICS
}
[ ; ]
Argumente
RECONFIGURE
Wenn die Ressourcenkontrolle nicht aktiviert ist, aktiviert RECONFIGURE ressourcenhauptend. Das Aktivieren der Ressourcenkontrolle hat die folgenden Ergebnisse:
- Die Klassifiziererfunktion wird, falls vorhanden, für neue Sitzungen ausgeführt und diesen Workloadgruppen zugewiesen.
- Die Ressourcenreservierungen und -beschränkungen, die in der Konfiguration der Ressourcenkontrolle angegeben sind, werden berücksichtigt und erzwungen.
- Anforderungen, die vorhanden sind, bevor die Ressourcensteuerung aktiviert wird, können von Konfigurationsänderungen betroffen sein, die beim Aktivieren der Ressourcensteuerung vorgenommen wurden.
Wenn die Ressourcensteuerung aktiviert ist, wendet RECONFIGURE alle Konfigurationsänderungen an, die vom CREATE | ALTER | DROP WORKLOAD GROUP oder CREATE | ALTER | DROP RESOURCE POOL oder CREATE | ALTER | DROP EXTERNAL RESOURCE POOL Anweisungen nach der vorherigen Verwendung von RECONFIGURE oder nach dem letzten Neustart des Datenbankmoduls vorgenommen wurden.
Wichtig
ALTER RESOURCE GOVERNOR RECONFIGURE müssen ausgeführt werden, damit Konfigurationsänderungen der Ressourcenverwaltung wirksam werden.
CLASSIFIER_FUNCTION = { Schemaname.Funktionsname | NULL }
Registriert die Klassifizierungsfunktion, die durch schema_name.function_name angegeben wird. Diese Funktion klassifiziert jede neue Sitzung und weist die Sitzung einer Workloadgruppe zu. Wenn NULL verwendet wird, werden der default Workloadgruppe automatisch neue Sitzungen zugewiesen.
MAX_OUTSTANDING_IO_PER_VOLUME = value
Gilt für: SQL Server 2014 (12.x) und höher.
Legt die maximale Anzahl an E/A-Vorgängen in der Warteschlange pro Datenträgervolume fest. Bei diesen E/A-Vorgängen kann es sich um Lese- oder Schreibvorgänge beliebiger Größe handeln. Der Maximalwert für MAX_OUTSTANDING_IO_PER_VOLUME beträgt 100. Der Wert ist kein Prozentsatz. Diese Einstellung ist so konzipiert, dass sie die E/A-Ressourcenkontrolle auf die E/A-Eigenschaften eines Datenträgervolumes abstimmt. Es stellt eine Sicherheitsüberprüfung auf Systemebene bereit, mit der das Datenbankmodul die für Ressourcenpools angegebene MIN_IOPS_PER_VOLUME Einstellung erfüllen kann, auch wenn andere Pools die einstellung MAX_IOPS_PER_VOLUME auf "unbegrenzt" festgelegt haben. Weitere Informationen finden Sie unter CREATE RESOURCE POOL.
DISABLE
Deaktiviert die Ressourcenkontrolle. Das Deaktivieren der Ressourcenkontrolle hat die folgenden Ergebnisse:
- Die Klassifiziererfunktion wird nicht ausgeführt.
- Alle neuen Benutzersitzungen werden automatisch in die
defaultWorkloadgruppe eingeteilt. - Systemsitzungen werden in die
internalWorkloadgruppe eingeteilt. - Alle Einstellungen für bestehende Arbeitsauslastungsgruppen und Ressourcenpools werden auf die Standardwerte zurückgesetzt. Es werden keine Ereignisse ausgelöst, wenn Grenzwerte erreicht werden.
- Normale Systemüberwachung ist nicht betroffen.
- Konfigurationsänderungen der Ressourcensteuerung können vorgenommen werden, die Änderungen werden jedoch erst wirksam, wenn die Ressourcensteuerung aktiviert ist.
- Nach dem Neustart des Datenbankmoduls lädt die Ressourcenverwaltung ihre Konfiguration nicht, sondern verwendet stattdessen nur die
defaultundinternalWorkloadgruppen und Ressourcenpools.
RESET STATISTICS
Setzt Statistiken zu allen Workloadgruppen und Ressourcenpools zurück, die in sys.dm_resource_governor_workload_groups und sys.dm_resource_governor_resource_poolsverfügbar gemacht werden.
Bemerkungen
ALTER RESOURCE GOVERNOR kann nicht innerhalb einer Benutzertransaktion verwendet werden.
Der parameter RECONFIGURE ist Teil der Ressourcenhauptwertungssyntax. Es sollte nicht mit RECONFIGUREverwechselt werden, die eine separate DDL-Anweisung ist.
Weitere Informationen finden Sie unter Resource Governor.
Berechtigungen
Erfordert die berechtigung CONTROL SERVER.
Beispiele
Aktivieren des Ressourcengouverneurs
Wenn SQL Server installiert ist, ist die Ressourcenkontrolle deaktiviert. Im folgenden Beispiel wird die Ressourcenkontrolle aktiviert. Nachdem die Anweisung ausgeführt wurde, ist die Ressourcensteuerung aktiviert und verwendet integrierte Workloadgruppen und Ressourcenpools.
ALTER RESOURCE GOVERNOR RECONFIGURE;
Zuweisen neuer Sitzungen zur Standardgruppe
Im folgenden Beispiel werden alle neuen Sitzungen der default Workloadgruppe zugewiesen, indem alle vorhandenen Klassifiziererfunktionen aus der Ressourcenverwaltungskonfiguration entfernt werden. Wenn keine Funktion als Klassifiziererfunktion festgelegt ist, werden alle neuen Benutzersitzungen der default Workloadgruppe zugewiesen. Diese Änderung gilt nur für neue Sitzungen. Vorhandene Sitzungen sind nicht betroffen.
ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = NULL);
ALTER RESOURCE GOVERNOR RECONFIGURE;
Erstellen und Registrieren einer Klassifiziererfunktion
Im folgenden Beispiel wird eine Klassifiziererfunktion namens dbo.rg_classifier in der master-Datenbank erstellt. Diese Funktion klassifiziert jede neue Sitzung anhand des Benutzer- oder Anwendungsnamens und weist die Sitzungsanforderungen und Abfragen einer bestimmten Arbeitsauslastungsgruppe zu. Sitzungen, die nicht mit dem angegebenen Benutzer- oder Anwendungsnamen übereinstimmen, werden der Standardarbeitsauslastungsgruppe zugewiesen. Anschließend wird die Klassifizierungsfunktion registriert, und die Konfigurationsänderung wird angewendet.
USE master;
GO
CREATE FUNCTION dbo.rg_classifier()
RETURNS sysname
WITH SCHEMABINDING
AS
BEGIN
-- Declare the variable for the function return value.
DECLARE @grp_name AS sysname;
-- If the login name is 'sa', classify the session into the groupAdmin workload group
IF (SUSER_NAME() = 'sa')
SET @grp_name = 'groupAdmin';
-- Classify SSMS sessions into the groupAdhoc workload group
ELSE IF UPPER(APP_NAME()) LIKE '%MANAGEMENT STUDIO%'
SET @grp_name = 'groupAdhoc';
-- Classify SSRS sessions into groupReports workload group
ELSE IF UPPER(APP_NAME()) LIKE '%REPORT SERVER%'
SET @grp_name = 'groupReports';
-- Otherwise, classify the session into the default workload group
ELSE
SET @grp_name = 'default';
-- Return the name of the workload group
RETURN @grp_name;
END;
GO
-- Register the classifier function and update resource governor configuration
ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = dbo.rg_classifier);
ALTER RESOURCE GOVERNOR RECONFIGURE;
Zurücksetzen von Ressourcenverwaltungsstatistiken
Im folgenden Beispiel wird die gesamte Statistik für Arbeitsauslastungsgruppen und Ressourcenpools zurückgesetzt.
ALTER RESOURCE GOVERNOR RESET STATISTICS;
Konfigurieren der einstellung MAX_OUTSTANDING_IO_PER_VOLUME
Im folgenden Beispiel wird die MAX_OUTSTANDING_IO_PER_VOLUME Einstellung auf 20 IOs festgelegt.
ALTER RESOURCE GOVERNOR WITH (MAX_OUTSTANDING_IO_PER_VOLUME = 20);
Verwandte Inhalte
- Ressourcengouverneur
- Konfigurationsbeispiele für Ressourcengouverneur und bewährte Methoden
- ERSTELLEN EINES RESSOURCENPOOLs
- ALTER RESOURCE POOL
- DROP-RESSOURCENPOOL-
- ERSTELLEN EINES EXTERNEN RESSOURCENPOOLs
- EXTERNER RESSOURCENPOOL
- ALTER EXTERNAL RESOURCE POOL
- ERSTELLEN EINER WORKLOADGRUPPE
- ALTER WORKLOAD GROUP
- DROP WORKLOAD GROUP
- sys.dm_resource_governor_workload_groups
- sys.dm_resource_governor_resource_pools