Verschieben einer Arbeitslastgruppe

Gilt für:SQL ServerAzure SQL Managed Instance

Sie können eine Resource Governor-Arbeitsauslastungsgruppe in SQL Server Management Studio oder mit Transact-SQL in einen anderen Ressourcenpool verschieben.

Sie können eine Arbeitsauslastungsgruppe nicht verschieben, wenn für den Resource Governor ein Konfigurationsvorgang aussteht.

Begrenzungen

  • Sie können eine Arbeitsauslastungsgruppe nicht verschieben, wenn für den Resource Governor ein Konfigurationsvorgang aussteht. Sie können feststellen, ob eine ausstehende Konfiguration vorliegt, indem Sie die dynamische Verwaltungssicht sys.dm_resource_governor_configuration abfragen, um den aktuellen Wert der Spalte is_configuration_pending zu erhalten.
  • Wenn eine Arbeitsauslastungsgruppe aktive Sitzungen enthält, schlägt das Verschieben in einen anderen Ressourcenpool fehl, wenn die ALTER RESOURCE GOVERNOR RECONFIGURE-Anweisung zum Anwenden der Änderung ausgeführt wird. Um dieses Problem zu vermeiden, können Sie eine der folgenden Aktionen ausführen:
    • Warten Sie, bis alle Sitzungen in der betroffenen Gruppe getrennt sind, und führen Sie anschließend die ALTER RESOURCE GOVERNOR RECONFIGURE-Anweisung aus.
    • Beenden Sie Sitzungen in der betroffenen Gruppe explizit mithilfe des KILL- T-SQL-Befehls, und führen Sie dann die ALTER RESOURCE GOVERNOR RECONFIGURE-Anweisung aus. Wenn Sie beschließen, dass Sitzungen nicht explizit beendet werden sollen, verschieben Sie die Gruppe in den ursprünglichen Ressourcenpool.
    • Starten Sie den Server neu. Wenn der Server neu gestartet wird, verwendet eine verschobene Gruppe die neue Ressourcenpoolzuordnung.

Berechtigungen

Für das Verschieben einer Arbeitsauslastungsgruppe ist die Berechtigung CONTROL SERVER erforderlich.

Verschieben einer Workloadgruppe mit SQL Server Management Studio

So verschieben Sie eine Workloadgruppe mithilfe von SQL Server Management Studio (SSMS):

  1. Erweitern Sie im Objekt-Explorer den Knoten Verwaltung, bis der Eintrag Resource Governor angezeigt wird.
  2. Öffnen Sie das Kontextmenü Resource Governor, und wählen Sie Eigenschaften aus. Die Seite Eigenschaften der Ressourcenkontrolle wird angezeigt.
  3. Wählen Sie im Raster Ressourcenpools den Ressourcenpool aus, der die Arbeitsauslastungsgruppe enthält, die verschoben werden soll. Im Raster Arbeitsauslastungsgruppen werden nun die Arbeitsauslastungsgruppen in diesem Ressourcenpool aufgelistet.
  4. Öffnen Sie im Raster Arbeitsauslastungsgruppen das Kontextmenü für die zu verschiebende Arbeitsauslastungsgruppe, und wählen Sie Verschieben nach aus. Daraufhin wird das Fenster Arbeitsauslastungsgruppe verschieben geöffnet.
  5. Verfügbare Ressourcenpools werden im Fenster angezeigt. Wählen Sie den Ressourcenpool aus, in den Sie die Workloadgruppe verschieben möchten, und wählen Sie OKaus.
  6. Wählen Sie OK aus, um die ALTER RESOURCE GOVERNOR RECONFIGURE-Anweisung auszuführen.
  7. Schlägt der Erstellungs- oder Neukonfigurierungsvorgang für den Ressourcenpool oder die Arbeitsauslastungsgruppe fehl, wird unter dem Titel der Eigenschaftenseite eine zusammenfassende Fehlermeldung angezeigt. Um eine detaillierte Fehlermeldung anzuzeigen, wählen Sie den Abwärtspfeil in der Fehlermeldung aus.

Verschieben einer Arbeitsauslastungsgruppe mit Transact-SQL

So verschieben Sie eine Workloadgruppe mithilfe von Transact-SQL:

  1. Führen Sie die ALTER WORKLOAD GROUP Anweisung aus, die den Namen der zu verschiebenden Workloadgruppe und den Ressourcenpool angibt, in den sie verschoben werden soll.
  2. Führen Sie die ALTER RESOURCE GOVERNOR RECONFIGURE-Anweisung aus.

Beispiel

Im folgenden Beispiel wird die Arbeitsauslastungsgruppe groupAdhoc in den Ressourcenpool default verschoben.

ALTER WORKLOAD GROUP groupAdhoc USING [default];

ALTER RESOURCE GOVERNOR RECONFIGURE;