Verwenden von Microsoft SQL Server Resource Governor für Ihre RDS for SQL Server-Instanz - Amazon Relational Database Service

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Verwenden von Microsoft SQL Server Resource Governor für Ihre RDS for SQL Server-Instanz

Nachdem Sie die Option Resource Governor zu Ihrer Optionsgruppe hinzugefügt haben, ist Resource Governor auf Datenbank-Engine-Ebene noch nicht aktiv. Um die Ressourcenkontrolle vollständig zu aktivieren, müssen Sie die gespeicherten Prozeduren von RDS für SQL Server verwenden, um sie zu aktivieren und die erforderlichen Resource Governor-Objekte zu erstellen. Weitere Informationen finden Sie unter Herstellen einer Verbindung mit Ihrer DB-Instance von Microsoft SQL Server.

Stellen Sie zunächst eine Verbindung zu Ihrer SQL Server-Datenbank her und rufen Sie dann die entsprechenden gespeicherten RDS-Prozeduren für SQL Server auf, um die Konfiguration abzuschließen. Anleitungen zum Herstellen einer Verbindung zu Ihrer Datenbank finden Sie unter Herstellen einer Verbindung mit Ihrer DB-Instance von Microsoft SQL Server.

Anleitungen zum Aufrufen der einzelnen gespeicherten Prozeduren finden Sie in den folgenden Themen:

Ressourcenpool verwalten

Ressourcenpool erstellen

Sobald Resource Governor in der Optionsgruppe aktiviert ist, können Sie benutzerdefinierte Ressourcenpools mithilfe von erstellenrds_create_resource_pool. Mit diesen Pools können Sie verschiedenen Workloads bestimmte Prozentsätze an CPU, Arbeitsspeicher und IOPS zuweisen.

Usage

USE [msdb] EXEC dbo.rds_create_resource_pool @pool_name=value, @MAX_CPU_PERCENT=value, @CAP_CPU_PERCENT=value, @MAX_MEMORY_PERCENT=value, @MAX_IOPS_PER_VOLUME=value

Die folgenden Parameter sind erforderlich:

  • @group_name- Ist der Name einer vorhandenen benutzerdefinierten Workload-Gruppe.

  • @pool_name- Ist der benutzerdefinierte Name für den Ressourcenpool. pool_nameist alphanumerisch, kann bis zu 128 Zeichen lang sein, muss innerhalb einer Database Engine-Instanz eindeutig sein und muss den Regeln für Datenbankbezeichner entsprechen.

Die folgenden Parameter sind optional:

  • @MAX_CPU_PERCENT- Gibt die maximale durchschnittliche CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten, wenn es zu einem CPU-Konflikt kommt. valueist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für value liegt zwischen 1 und 100.

  • @CAP_CPU_PERCENT— Gibt eine feste Obergrenze für die CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten. Schränkt die maximale CPU-Bandbreite auf den angegebenen Wert ein. valueist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für value liegt zwischen 1 und 100.

  • @MAX_MEMORY_PERCENT- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die Anfragen in diesem Ressourcenpool verwenden können. valueist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für value liegt zwischen 1 und 100.

  • @MAX_IOPS_PER_VOLUME- Gibt die maximale Anzahl von I/O Vorgängen pro Sekunde (IOPS) pro Festplattenvolume an, die für den Ressourcenpool zulässig sind. Der zulässige Bereich für value liegt zwischen 0 und 2^31-1 (2.147.483.647). Geben Sie 0 an, um ein IOPS-Limit für den Pool aufzuheben. Der Standardwert ist 0.

Beispiele

Beispiel für die Erstellung eines Ressourcenpools mit allen Standardwerten:

--This creates resource pool 'SalesPool' with all default values USE [msdb] EXEC rds_create_resource_pool @pool_name = 'SalesPool'; --Apply changes USE [msdb] EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration select * from sys.resource_governor_resource_pools

Beispiel für die Erstellung eines Ressourcenpools mit verschiedenen angegebenen Parametern:

--creates resource pool USE [msdb] EXEC dbo.rds_create_resource_pool @pool_name='analytics', @MAX_CPU_PERCENT = 30, @CAP_CPU_PERCENT = 40, @MAX_MEMORY_PERCENT = 20; --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration select * from sys.resource_governor_resource_pools

Ressourcenpool ändern

Usage

USE [msdb] EXEC dbo.rds_alter_resource_pool @pool_name=value, @MAX_CPU_PERCENT=value, @CAP_CPU_PERCENT=value, @MAX_MEMORY_PERCENT=value, @MAX_IOPS_PER_VOLUME=value;

Die folgenden Parameter sind erforderlich:

  • @pool_name- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools. Das Ändern des Standardressourcenpools ist in Amazon RDS SQL Server nicht zulässig.

Mindestens einer der optionalen Parameter muss angegeben werden:

  • @MAX_CPU_PERCENT- Gibt die maximale durchschnittliche CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten, wenn es zu einem CPU-Konflikt kommt. valueist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für value liegt zwischen 1 und 100.

  • @CAP_CPU_PERCENT— Gibt eine feste Obergrenze für die CPU-Bandbreite an, die alle Anfragen im Ressourcenpool erhalten. Schränkt die maximale CPU-Bandbreite auf den angegebenen Wert ein. valueist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für value liegt zwischen 1 und 100.

  • @MAX_MEMORY_PERCENT- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die Anfragen in diesem Ressourcenpool verwenden können. valueist eine Ganzzahl mit der Standardeinstellung 100. Der zulässige Bereich für value liegt zwischen 1 und 100.

  • @MAX_IOPS_PER_VOLUME- Gibt die maximale Anzahl von I/O Vorgängen pro Sekunde (IOPS) pro Festplattenvolume an, die für den Ressourcenpool zulässig sind. Der zulässige Bereich für value liegt zwischen 0 und 2^31-1 (2.147.483.647). Geben Sie 0 an, um ein IOPS-Limit für den Pool aufzuheben. Der Standardwert ist 0.

Beispiele

--This alters resource pool USE [msdb] EXEC dbo.rds_alter_resource_pool @pool_name='analytics', @MAX_CPU_PERCENT = 10, @CAP_CPU_PERCENT = 20, @MAX_MEMORY_PERCENT = 50; --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration. select * from sys.resource_governor_resource_pools

Ressourcenpool löschen

Usage

USE [msdb] EXEC dbo.rds_drop_resource_pool @pool_name=value;

Der folgende Parameter ist erforderlich:

  • @pool_name- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools.

Anmerkung

Das Löschen des internen oder Standardressourcenpools ist in SQL Server nicht zulässig.

Beispiele

--This drops resource pool USE [msdb] EXEC dbo.rds_drop_resource_pool @pool_name='analytics' --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration select * from sys.resource_governor_resource_pools

Arbeitslastgruppen verwalten

Workload-Gruppen, die mit und erstellt rds_create_workload_group und verwaltet werdenrds_alter_workload_group, ermöglichen es Ihnen, Wichtigkeitsstufen, Speicherzuweisungen und andere Parameter für Gruppen von Abfragen festzulegen.

Workload-Gruppe erstellen

Usage

USE [msdb] EXEC dbo.rds_create_workload_group @group_name = value, @IMPORTANCE ={ LOW | MEDIUM | HIGH }, @REQUEST_MAX_MEMORY_GRANT_PERCENT =value, @REQUEST_MAX_CPU_TIME_SEC = value , @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value, @MAX_DOP = value, @GROUP_MAX_REQUESTS = value, @pool_name = value

Die folgenden Parameter sind erforderlich:

  • @pool_name- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools.

  • @group_name- Ist der Name einer vorhandenen benutzerdefinierten Workload-Gruppe.

Die folgenden Parameter sind optional:

  • @IMPORTANCE— Gibt die relative Wichtigkeit einer Anfrage in der Workload-Gruppe an. Der Standardwert ist MEDIUM.

  • @REQUEST_MAX_MEMORY_GRANT_PERCENT- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die eine einzelne Anforderung aus dem Pool beanspruchen kann. valueist ein Prozentsatz der Ressourcenpoolgröße, definiert durchMAX_MEMORY_PERCENT. Der Standardwert ist 25.

  • @REQUEST_MAX_CPU_TIME_SEC- Gibt die maximale CPU-Zeit in Sekunden an, die eine Batch-Anfrage verwenden kann. valuemuss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für value ist 0, was unbegrenzt bedeutet.

  • @REQUEST_MEMORY_GRANT_TIMEOUT_SEC- Gibt die maximale Zeit in Sekunden an, für die eine Abfrage warten kann, bis eine Speicherzuweisung aus dem Abfrage-Workspace-Speicher verfügbar wird. valuemuss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für value 0 verwendet eine interne Berechnung, die auf den Abfragekosten basiert, um die maximale Zeit zu bestimmen.

  • @MAX_DOP- Gibt den maximalen Grad an Parallelität (MAXDOP) für die parallel Abfrageausführung an. Der zulässige Bereich für value liegt zwischen 0 und 64. Die Standardeinstellung für value 0 verwendet die globale Einstellung.

  • @GROUP_MAX_REQUESTS= Gibt die maximale Anzahl gleichzeitiger Anfragen an, die in der Workload-Gruppe ausgeführt werden dürfen. valuemuss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für value ist 0 und erlaubt eine unbegrenzte Anzahl von Anfragen.

  • @pool_name= Ordnet die Workload-Gruppe dem benutzerdefinierten Ressourcenpool zu, der durch den Ressourcenpool identifiziert wirdpool_name, oder mit dem default Ressourcenpool. Wenn pool_name nicht angegeben, ist die Workload-Gruppe dem integrierten default Pool zugeordnet.

Beispiele

--This creates workload group named 'analytics' USE msdb; EXEC dbo.rds_create_workload_group @group_name = 'analytics', @IMPORTANCE = 'HIGH', @REQUEST_MAX_MEMORY_GRANT_PERCENT = 25, @REQUEST_MAX_CPU_TIME_SEC = 0, @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 0, @MAX_DOP = 0, @GROUP_MAX_REQUESTS = 0, @pool_name = 'analytics'; --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration select * from sys.resource_governor_workload_groups

Workload-Gruppe ändern

Usage

EXEC msdb.dbo.rds_alter_workload_group @group_name = value, @IMPORTANCE = 'LOW|MEDIUM|HIGH', @REQUEST_MAX_MEMORY_GRANT_PERCENT = value, @REQUEST_MAX_CPU_TIME_SEC = value, @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = value, @MAX_DOP = value, @GROUP_MAX_REQUESTS = value, @pool_name = value

Die folgenden Parameter sind erforderlich:

  • @group_name- Ist der Name einer Standard-Workload-Gruppe oder einer vorhandenen benutzerdefinierten Workload-Gruppe.

Anmerkung

Es REQUEST_MAX_MEMORY_GRANT_PERCENT wird nur das Ändern von Parametern in der Standard-Workload-Gruppe unterstützt. Für die Standard-Workload-Gruppe REQUEST_MAX_MEMORY_GRANT_PERCENT muss der Wert zwischen 1 und 70 liegen. In der Standard-Workload-Gruppe können keine anderen Parameter geändert werden. Alle Parameter können in der benutzerdefinierten Workload-Gruppe geändert werden.

Die folgenden Parameter sind optional:

  • @IMPORTANCE- Gibt die relative Wichtigkeit einer Anfrage in der Workload-Gruppe an. Der Standardwert ist MEDIUM.

  • @REQUEST_MAX_MEMORY_GRANT_PERCENT- Gibt die maximale Menge an Abfrage-Workspace-Speicher an, die eine einzelne Anforderung aus dem Pool beanspruchen kann. valueist ein Prozentsatz der Ressourcenpoolgröße, definiert durchMAX_MEMORY_PERCENT. Der Standardwert ist 25. Bei Amazon RDS REQUEST_MAX_MEMORY_GRANT_PERCENT muss der Wert zwischen 1 und 70 liegen.

  • @REQUEST_MAX_CPU_TIME_SEC- Gibt die maximale CPU-Zeit in Sekunden an, die eine Batch-Anfrage verwenden kann. valuemuss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für value ist 0, was unbegrenzt bedeutet.

  • @REQUEST_MEMORY_GRANT_TIMEOUT_SEC- Gibt die maximale Zeit in Sekunden an, für die eine Abfrage warten kann, bis eine Speicherzuweisung aus dem Abfrage-Workspace-Speicher verfügbar wird. valuemuss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für value 0 verwendet eine interne Berechnung, die auf den Abfragekosten basiert, um die maximale Zeit zu bestimmen.

  • @MAX_DOP- Gibt den maximalen Grad an Parallelität (MAXDOP) für die parallel Abfrageausführung an. Der zulässige Bereich für value liegt zwischen 0 und 64. Die Standardeinstellung für value 0 verwendet die globale Einstellung.

  • @GROUP_MAX_REQUESTS— Gibt die maximale Anzahl gleichzeitiger Anfragen an, die in der Workload-Gruppe ausgeführt werden dürfen. valuemuss 0 oder eine positive Ganzzahl sein. Die Standardeinstellung für value ist 0 und erlaubt eine unbegrenzte Anzahl von Anfragen.

  • @pool_name- Ordnet die Workload-Gruppe dem benutzerdefinierten Ressourcenpool zu, der durch identifiziert wirdpool_name.

Beispiele

Beispiel für die Änderung der Standard-Workload-Gruppe REQUEST_MAX_MEMORY_GRANT_PERCENT:

--Modify default workload group (set memory grant cap to 10%) USE msdb EXEC dbo.rds_alter_workload_group @group_name = 'default', @REQUEST_MAX_MEMORY_GRANT_PERCENT=10; --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration SELECT * FROM sys.resource_governor_workload_groups WHERE name='default';

Beispiel für die Änderung einer nicht standardmäßigen Workload-Gruppe:

EXEC msdb.dbo.rds_alter_workload_group @group_name = 'analytics', @IMPORTANCE = 'HIGH', @REQUEST_MAX_MEMORY_GRANT_PERCENT = 30, @REQUEST_MAX_CPU_TIME_SEC = 3600, @REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 60, @MAX_DOP = 4, @GROUP_MAX_REQUESTS = 100; --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration;

Beispiel für das Verschieben einer nicht standardmäßigen Workload-Gruppe in einen anderen Ressourcenpool:

EXEC msdb.dbo.rds_alter_workload_group @group_name = 'analytics', @pool_name='abc' --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration select * from sys.resource_governor_workload_groups

Workload-Gruppe löschen

Usage

EXEC msdb.dbo.rds_drop_workload_group @group_name = value

Die folgenden Parameter sind erforderlich:

  • @group_name- Ist der Name einer vorhandenen benutzerdefinierten Workload-Gruppe.

Beispiele

--Drops a Workload Group: EXEC msdb.dbo.rds_drop_workload_group @group_name = 'analytics'; --Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration; --Validate configuration select * from sys.resource_governor_workload_groups

Klassifikatorfunktion erstellen und registrieren

Dieses Verfahren erstellt eine Classifier-Funktion für die Ressourcenkontrolle in der Master-Datenbank, die Verbindungen zu benutzerdefinierten Workload-Gruppen auf der Grundlage bestimmter Kriterien (Benutzername, Datenbank, Host oder Anwendungsname) weiterleitet. Wenn die Ressourcenkontrolle aktiviert ist und in der Konfiguration der Ressourcenkontrolle eine Klassifizierungsfunktion angegeben ist, bestimmt die Funktionsausgabe die für neue Sitzungen verwendete Workload-Gruppe. In Ermangelung einer Klassifizierungsfunktion werden alle Sitzungen der default Gruppe zugeordnet.

Features:

  • Unterstützt bis zu zwei Workload-Gruppen mit ihren jeweiligen Routing-Bedingungen.

  • Kombiniert Kriterien mit AND Bedingungen innerhalb jeder Gruppe.

  • Erfordert mindestens ein Routingkriterium pro Workload-Gruppe.

  • Der Funktionsname muss mit beginnenrg_classifier_.

  • Standardgruppenzuweisung, wenn keine Bedingungen erfüllt sind.

Die Klassifizierungsfunktion weist die folgenden Eigenschaften und Verhaltensweisen auf:

  • Die Funktion ist im Serverbereich (in der Master-Datenbank) definiert.

  • Die Funktion ist mit Schemabindung definiert.

  • Die Funktion wird für jede neue Sitzung ausgewertet, auch wenn das Verbindungspooling aktiviert ist.

  • Die Funktion gibt den Workload-Gruppenkontext für die Sitzung zurück. Die Sitzung wird der vom Classifier zurückgegebenen Workload-Gruppe für die Dauer der Sitzung zugewiesen.

  • Wenn die Funktion NULL, Standard oder den Namen einer nicht existierenden Workload-Gruppe zurückgibt, wird der Sitzung der Standard-Workload-Gruppenkontext zugewiesen. Der Sitzung wird außerdem der Standardkontext zugewiesen, falls die Funktion aus irgendeinem Grund fehlschlägt.

  • Sie können mehrere Klassifikatorfunktionen erstellen. In SQL Server kann jedoch jeweils nur eine Klassifikatorfunktion registriert werden.

  • Die Klassifiziererfunktion kann nur gelöscht werden, wenn ihr Klassifiziererstatus mithilfe der Deregistrierungsprozedur (EXEC dbo.msdb.rds_alter_resource_governor_configuration @deregister_function = 1;) entfernt wird, die den Funktionsnamen auf NULL setzt, oder es wird eine andere Klassifiziererfunktion mit () registriert EXEC dbo.msdb.rds_alter_resource_governor_configuration @classifier_function = <function_name>;

  • In Ermangelung einer Klassifizierungsfunktion werden alle Sitzungen in die Standardgruppe eingeteilt.

  • Sie können eine Klassifikatorfunktion nicht ändern, solange sie in der Resource Governor-Konfiguration referenziert wird. Sie können die Konfiguration jedoch ändern, um eine andere Klassifizierungsfunktion zu verwenden. Wenn Sie Änderungen am Klassifikator vornehmen möchten, sollten Sie erwägen, ein Paar von Klassifikatorfunktionen zu erstellen. Sie könnten beispielsweise und erstellenrg_classifier_a. rg_classifier_b

Usage

EXEC msdb.dbo.rds_create_classifier_function @function_name = value, @workload_group1 = value, @user_name1 = value, @db_name1 = value, @host_name1 = value, @app_name1 = value, @workload_group2 = value, @user_name2 = value, @db_name2 = value, @host_name2 = value, @app_name2 = value

Die folgenden Parameter sind erforderlich:

  • @function_name- Name der Klassifikatorfunktion. Muss beginnen mit rg_classifier_

  • @workload_group1- Name der ersten Workload-Gruppe

Die folgenden Parameter sind optional:

(Mindestens eines dieser Kriterien muss für Gruppe 1 angegeben werden)

  • @user_name1- Anmeldename für Gruppe 1

  • @db_name1- Datenbankname für Gruppe 1

  • @host_name1- Hostname für Gruppe 1

  • @app_name1- Anwendungsname für Gruppe 1

(Wenn Gruppe 2 angegeben ist, muss mindestens ein Kriterium angegeben werden)

  • @workload_group2- Name der zweiten Workload-Gruppe

  • @user_name2- Anmeldename für Gruppe 2

  • @db_name2- Datenbankname für Gruppe 2

  • @host_name2- Hostname für Gruppe 2

  • @app_name2- Anwendungsname für Gruppe 2

Anmerkung

Systemkonten, Datenbanken, Anwendungen und Hosts sind eingeschränkt.

Beispiele

Einfaches Beispiel mit einer Workload-Gruppe:

/*Create a classifier to route all requests from 'PowerBI' app to workload group 'reporting_group'*/ EXEC msdb.dbo.rds_create_classifier_function @function_name = 'rg_classifier_a', @workload_group1 = 'reporting_group', @app_name1 = 'PowerBI'; --Register the classifier EXEC msdb.dbo.rds_alter_resource_governor_configuration @classifier_function = 'rg_classifier_a'; -- Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration /*Query sys.resource_governor_configuration to validate that resource governor is enabled and is using the classifier function we created and registered*/ use master go SELECT OBJECT_SCHEMA_NAME(classifier_function_id) AS classifier_schema_name, OBJECT_NAME(classifier_function_id) AS classifier_object_name, is_enabled FROM sys.resource_governor_configuration;

Klassifizierer-Funktion löschen

Usage

USE [msdb] EXEC dbo.rds_drop_classifier_function @function_name = value;

Der folgende Parameter ist erforderlich:

  • @function_name- Ist der Name einer vorhandenen benutzerdefinierten Klassifikatorfunktion

Beispiel

EXEC msdb.dbo.rds_drop_classifier_function @function_name = 'rg_classifier_b';

Klassifikatorfunktion deregistrieren

Gehen Sie wie folgt vor, um die Registrierung der Klassifikatorfunktion aufzuheben. Nachdem die Registrierung der Funktion aufgehoben wurde, werden neue Sitzungen automatisch der Standard-Workload-Gruppe zugewiesen.

Usage

USE [msdb] EXEC dbo.rds_alter_resource_governor_configuration @deregister_function = 1;

Für die Abmeldung ist der folgende Parameter erforderlich:

  • @deregister_functionmuss 1 sein

Beispiel

EXEC msdb.dbo.rds_alter_resource_governor_configuration @deregister_function = 1; GO -- Apply changes EXEC msdb.dbo.rds_alter_resource_governor_configuration;

Statistik zurücksetzen

Die Resource Governor-Statistiken sind seit dem letzten Serverneustart kumulativ. Wenn Sie ab einem bestimmten Zeitpunkt Statistiken sammeln müssen, können Sie die Statistiken mithilfe der folgenden gespeicherten Amazon RDS-Prozedur zurücksetzen.

Usage

USE [msdb] EXEC dbo.rds_alter_resource_governor_configuration @reset_statistics = 1;

Zum Zurücksetzen von Statistiken ist der folgende Parameter erforderlich:

  • @reset_statisticsmuss 1 sein

Änderungen der Konfiguration von Resource Governor

Wenn Resource Governor nicht aktiviert ist, rds_alter_resource_governor_configuration aktiviert Resource Governor. Die Aktivierung der Ressourcenkontrolle hat folgende Ergebnisse:

  • Die Klassifizierungsfunktion, falls vorhanden, wird für neue Sitzungen ausgeführt, wobei sie Workload-Gruppen zugewiesen werden.

  • Die in der Resource Governor-Konfiguration angegebenen Ressourcengrenzwerte werden eingehalten und durchgesetzt.

  • Die in der Resource Governor-Konfiguration angegebenen Ressourcengrenzwerte werden eingehalten und durchgesetzt.

  • Anfragen, die vor der Aktivierung von Resource Governor bestanden haben, können von Konfigurationsänderungen betroffen sein, die bei der Aktivierung von Resource Governor vorgenommen wurden.

  • Bestehende Anfragen, bevor Resource Governor aktiviert wurde, können von allen Konfigurationsänderungen betroffen sein, die vorgenommen wurden, wenn Resource Governor aktiviert wurde.

  • Auf RDS für SQL Server EXEC msdb.dbo.rds_alter_resource_governor_configuration müssen alle Änderungen an der Resource Governor-Konfiguration ausgeführt werden, damit sie wirksam werden.

Usage

USE [msdb] EXEC dbo.rds_alter_resource_governor_configuration

TempDB an einen Ressourcenpool binden

Mithilfe von Amazon RDS SQL Server Version 2019 und höher können Sie speicheroptimierte tempdb-Metadaten rds_bind_tempdb_metadata_to_resource_pool an einen bestimmten Ressourcenpool binden.

Anmerkung

Die speicheroptimierte Tempdb-Metadatenfunktion muss aktiviert werden, bevor tempdb-Metadaten an den Ressourcenpool gebunden werden können. Um diese Funktion auf Amazon RDS zu aktivieren, ist es ein statischer Parametertempdb metadata memory-optimized.

Aktivieren Sie den statischen Parameter auf Amazon RDS und führen Sie einen Neustart ohne Failover durch, damit der Parameter wirksam wird:

aws rds modify-db-parameter-group \ --db-parameter-group-name test-sqlserver-ee-2022 \ --parameters "ParameterName='tempdb metadata memory-optimized',ParameterValue=True,ApplyMethod=pending-reboot"

Usage

USE [msdb] EXEC dbo.rds_bind_tempdb_metadata_to_resource_pool @pool_name=value;

Der folgende Parameter ist erforderlich:

  • @pool_name- Ist der Name eines vorhandenen benutzerdefinierten Ressourcenpools.

Anmerkung

Diese Änderung erfordert außerdem einen Neustart des SQL-Dienstes ohne Failover, damit sie wirksam wird, auch wenn die speicheroptimierte TempDB-Metadatenfunktion bereits aktiviert ist.

TempDB von einem Ressourcenpool trennen

Entbindet speicheroptimierte tempdb-Metadaten aus einem Ressourcenpool.

Anmerkung

Diese Änderung erfordert außerdem einen Neustart des SQL-Dienstes ohne Failover, um wirksam zu werden

Usage

USE [msdb] EXEC dbo.rds_unbind_tempdb_metadata_from_resource_pool

Steuerung der Ressourcen für Cleanup

Mit diesem Verfahren werden alle zugehörigen Objekte bereinigt, nachdem Sie die Option „Ressourcenkontrolle“ aus der Optionsgruppe entfernt haben. Dadurch wird die Ressourcenkontrolle deaktiviert, die Standard-Workload-Gruppe auf die Standardeinstellungen zurückgesetzt und benutzerdefinierte Workload-Gruppen, Ressourcenpools und Klassifizierungsfunktionen entfernt.

Schlüsselfunktionen

  • Setzt die Standard-Workload-Gruppe auf die Standardeinstellungen zurück

  • Deaktiviert den Ressourcengouverneur

  • Entfernt benutzerdefinierte Workload-Gruppen

  • Entfernt benutzerdefinierte Ressourcenpools

  • Löscht Klassifikatorfunktionen

  • Entfernt die Tempdb-Ressourcenpool-Bindung, falls sie aktiviert ist

Wichtig

Bei dieser Bereinigung kann ein Fehler auftreten, wenn in der Workload-Gruppe aktive Sitzungen vorhanden sind. Warten Sie entweder, bis die aktiven Sitzungen abgeschlossen sind, oder beenden Sie die aktiven Sitzungen gemäß Ihren Geschäftsanforderungen. Es wird empfohlen, dies während des Wartungsfensters auszuführen.

Bei dieser Bereinigung kann ein Fehler auftreten, wenn ein Ressourcenpool an tempdb gebunden war und ein Neustart ohne Failover noch nicht stattgefunden hat. Wenn Sie zuvor einen Ressourcenpool an tempdb gebunden oder einen Ressourcenpool von tempdb getrennt haben, führen Sie einen Neustart ohne Failover durch, damit die Änderung wirksam wird. Es wird empfohlen, dies während des Wartungsfensters auszuführen.

Usage

USE [msdb] EXEC dbo.rds_cleanup_resource_governor