Sdílet prostřednictvím


ALTER RESOURCE GOVERNOR (Transact-SQL)

platí pro:SQL Serverazure SQL Managed Instance

Tento příkaz provádí následující akce správce prostředků:

  • Povolte nebo zakažte správce prostředků.
  • Použijte změny konfigurace zadané při spuštění příkazů CREATE | ALTER | DROP WORKLOAD GROUP nebo CREATE | ALTER | DROP RESOURCE POOL nebo CREATE | ALTER | DROP EXTERNAL RESOURCE POOL.
  • Nakonfigurujte klasifikaci pro příchozí relace.
  • Resetování statistik skupiny úloh a fondu zdrojů
  • Nastavte maximální vstupně-výstupní operace ve frontě na diskový svazek.

Transact-SQL konvence syntaxe

Syntax

ALTER RESOURCE GOVERNOR
    { RECONFIGURE
          [ WITH
                ( [ CLASSIFIER_FUNCTION = { schema_name.function_name | NULL } ]
                  [ [ , ] MAX_OUTSTANDING_IO_PER_VOLUME = value ]
                )
          ]
      | DISABLE
      | RESET STATISTICS
    }
[ ; ]

Argumenty

PŘEKONFIGUROVAT

Pokud správce prostředků není povolený, RECONFIGURE povolí správce prostředků. Povolení správce prostředků má následující výsledky:

  • Funkce klasifikátoru, pokud existuje, se provádí pro nové relace a přiřazuje je skupinám úloh.
  • Rezervace a omezení prostředků, které jsou zadané v konfiguraci správce prostředků, se dodržují a vynucují.
  • Požadavky, které existovaly před povolením správce prostředků, můžou být ovlivněné všemi změnami konfigurace provedenými při povolení správce prostředků.

Pokud je správce prostředků povolený, RECONFIGURE použije všechny změny konfigurace provedené CREATE | ALTER | DROP WORKLOAD GROUP nebo CREATE | ALTER | DROP RESOURCE POOL nebo CREATE | ALTER | DROP EXTERNAL RESOURCE POOL příkazy po předchozím použití RECONFIGURE nebo po posledním restartování databázového stroje.

Důležitý

ALTER RESOURCE GOVERNOR RECONFIGURE se musí spustit, aby se projevily změny konfigurace správce prostředků.

CLASSIFIER_FUNCTION = { schema_name.function_name | NULL }

Zaregistruje funkci klasifikace určenou schema_name.function_name. Tato funkce klasifikuje každou novou relaci a přiřadí ji skupině úloh. Při NULL se nové relace automaticky přiřadí ke skupině úloh default.

MAX_OUTSTANDING_IO_PER_VOLUME = hodnota

platí pro: SQL Server 2014 (12.x) a novější.

Nastaví maximální vstupně-výstupní operace ve frontě na diskový svazek. Tyto vstupně-výstupní operace můžou být přečteny nebo zapisovat libovolné velikosti. Maximální hodnota MAX_OUTSTANDING_IO_PER_VOLUME je 100. Hodnota není procento. Toto nastavení je navržené tak, aby vyladily zásady správného řízení vstupně-výstupních prostředků na charakteristiky vstupně-výstupních operací svazku disku. Poskytuje kontrolu zabezpečení na úrovni systému, která umožňuje databázovému stroji splnit nastavení MIN_IOPS_PER_VOLUME určené pro fondy zdrojů, i když mají ostatní fondy nastavené MAX_IOPS_PER_VOLUME nastavení neomezené. Další informace naleznete v tématu CREATE RESOURCE POOL.

VYPNOUT

Zakáže správce prostředků. Zakázání správce prostředků má následující výsledky:

  • Funkce klasifikátoru se nespustí.
  • Všechny nové uživatelské relace se automaticky klasifikují do skupiny úloh default.
  • Systémové relace jsou klasifikovány do skupiny úloh internal.
  • Všechna existující nastavení skupin úloh a fondu zdrojů se resetují na výchozí hodnoty. Po dosažení limitů se neaktivují žádné události.
  • Normální monitorování systému není ovlivněno.
  • Změny konfigurace správce prostředků se dají provést, ale změny se projeví až po povolení správce prostředků.
  • Po restartování databázového stroje správce prostředků nenačte svou konfiguraci, ale používá pouze default a internal skupiny úloh a fondy zdrojů.

RESETOVÁNÍ STATISTIKY

Resetuje statistiky pro všechny skupiny úloh a fondy zdrojů zveřejněné v sys.dm_resource_governor_workload_groups a sys.dm_resource_governor_resource_pools.

Poznámky

ALTER RESOURCE GOVERNOR nelze použít uvnitř transakce uživatele.

Parametr RECONFIGURE je součástí syntaxe správce prostředků. Nemělo by být zaměňováno s RECONFIGURE, což je samostatný příkaz DDL.

Další informace najdete v tématu správce prostředků.

Dovolení

Vyžaduje oprávnění CONTROL SERVER.

Příklady

Povolení správce prostředků

Po instalaci SQL Serveru je správce prostředků zakázaný. Následující příklad umožňuje správce prostředků. Po provedení příkazu je správce prostředků povolený a používá předdefinované skupiny úloh a fondy prostředků.

ALTER RESOURCE GOVERNOR RECONFIGURE;

Přiřazení nových relací výchozí skupině

Následující příklad přiřadí všechny nové relace skupině úloh default odebráním existující funkce klasifikátoru z konfigurace správce prostředků. Pokud není žádná funkce určená jako klasifikátor, přiřadí se všechny nové uživatelské relace ke skupině úloh default. Tato změna platí jenom pro nové relace. Stávající relace nejsou ovlivněné.

ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION = NULL);
ALTER RESOURCE GOVERNOR RECONFIGURE;

Vytvoření a registrace funkce klasifikátoru

Následující příklad vytvoří funkci klasifikátoru s názvem dbo.rg_classifier v databázi master. Funkce klasifikuje každou novou relaci na základě uživatelského jména nebo názvu aplikace a přiřadí požadavky a dotazy relace ke konkrétní skupině úloh. Relace, které se nemapují na zadané názvy uživatelů nebo aplikací, jsou přiřazené výchozí skupině úloh. Funkce klasifikátoru se pak zaregistruje a použije se změna konfigurace.

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;

Resetování statistiky správce prostředků

Následující příklad resetuje všechny statistiky skupin úloh a fondu prostředků.

ALTER RESOURCE GOVERNOR RESET STATISTICS;

Konfigurace nastavení MAX_OUTSTANDING_IO_PER_VOLUME

Následující příklad nastaví nastavení MAX_OUTSTANDING_IO_PER_VOLUME na 20 IOS.

ALTER RESOURCE GOVERNOR WITH (MAX_OUTSTANDING_IO_PER_VOLUME = 20);