Compartilhar via


ALTER RESOURCE GOVERNOR (Transact-SQL)

Esta instrução é usada para executar as seguintes ações do Administrador de Recursos no SQL Server:

  • Aplicar as alterações de configuração especificadas quando as instruções CREATE|ALTER|DROP WORKLOAD GROUP ou CREATE|ALTER|DROP RESOURCE POOL forem emitidas.

  • Habilitar ou desabilitar o Administrador de Recursos.

  • Configurar a classificação de solicitações de entrada.

  • Reiniciar o grupo de carga de trabalho e as estatísticas de pool de recursos.

  • Define o máximo de operações de E/S por volume de disco.

Aplica-se a: SQL Server (do SQL Server 2008 à versão atual).

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

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

[ ; ]

Argumentos

  • DISABLE
    Desabilita o Administrador de Recursos. A desabilitação do Administrador de Recursos gera os seguintes resultados:

    • A função de classificação não é executada.

    • Todas as conexões novas são automaticamente classificadas no grupo padrão.

    • As solicitações iniciadas pelo sistema são classificadas no grupo de carga de trabalho interno.

    • Todas as configurações existentes do grupo de carga de trabalho e do pool de recursos são redefinidas para os valores padrão. Nesse caso, nenhum evento é acionado quando os limites são atingidos.

    • O monitoramento normal do sistema não é afetado.

    • As alterações de configuração podem ser feitas, mas as alterações não entram em vigor até que o Administrador de Recursos seja habilitado.

    • Depois que o SQL Server for reiniciado, o Administrador de Recursos não carregará sua configuração, mas em vez disso terá apenas os grupos e pools padrão e internos.

  • RECONFIGURE
    Quando o Administrador de Recursos não está habilitado, RECONFIGURE habilita o Administrador de Recursos. A habilitação do Administrador de Recursos gera os seguintes resultados:

    • A função de classificação é executada para conexões novas, de forma que a carga de trabalho possa ser atribuída a grupos de cargas de trabalho.

    • Os limites de recursos especificados na configuração do Administrador de Recursos são cumpridos e impostos.

    • As solicitações existentes antes da habilitação do Administrador de Recursos são afetadas por todas as alterações feitas na configuração quando o Administrador de Recursos foi desabilitado.

    Quando o Administrador de Recursos é executado, RECONFIGURE será aplicada a qualquer alteração de configuração solicitada quando as instruções CREATE|ALTER|DROP WORKLOAD GROUP ou CREATE|ALTER|DROP RESOURCE POOL forem executadas.

    Importante

    ALTER RESOURCE GOVERNOR RECONFIGURE deve ser emitida para que qualquer alteração de configuração entre em vigor.

  • CLASSIFIER_FUNCTION = { schema_name**.**function_name | NULL }
    Registra a função de classificação especificada por schema_name.function_name. Essa função classifica cada sessão nova e atribui as solicitações e consultas de sessão a um grupo de carga de trabalho. Quando NULL é usado, novas sessões são automaticamente atribuídas ao grupo de carga de trabalho padrão.

  • RESET STATISTICS
    Zerar estatísticas sobre todos os grupos de cargas de trabalho e pools de recursos. Para obter mais informações, consulte sys.dm_resource_governor_workload_groups (Transact-SQL) e sys.dm_resource_governor_resource_pools (Transact-SQL).

  • MAX_OUTSTANDING_IO_PER_VOLUME = value

    Aplica-se a: do SQL Server 2014 ao SQL Server 2014.

    Define o máximo de operações de E/S na fila por volume de disco. Essas operações de E/S podem ser leituras ou gravações de qualquer tamanho. O valor máximo para MAX_OUTSTANDING_IO_PER_VOLUME é 100. Não é uma porcentagem. Essa configuração é criada para ajustar a administração do recurso de E/S às características de E/S de um volume de disco. É recomendável fazer experiências com valores diferentes e usar uma ferramenta de calibração como IOMeter ou SQLIO para identificar o valor máximo do subsistema de armazenamento. Essa configuração fornece uma verificação de segurança no nível do sistema que permite ao SQL Server atender ao mínimo de IOPS para pools de recursos mesmo se outros pools tiverem o MAX_IOPS_PER_VOLUME definido como ilimitado. Para obter mais informações sobre MAX_IOPS_PER_VOLUME, consulte CREATE RESOURCE POOL.

Comentários

ALTER RESOURCE GOVERNOR DISABLE, ALTER RESOURCE GOVERNOR RECONFIGURE, e ALTER RESOURCE GOVERNOR RESET STATISTICS não podem ser usados em uma transação de usuário.

O parâmetro RECONFIGURE é parte da sintaxe do Administrador de Recursos e não deve ser confundido com RECONFIGURE, que é uma instrução DDL diferente.

Recomendamos que você esteja familiarizado com os estados do Administrador de recursos antes de executar as instruções DDL. Para obter mais informações, consulte Administrador de Recursos.

Permissões

Requer a permissão CONTROL SERVER.

Exemplos

A.Iniciando o Administrador de Recursos

Quando o SQL Server for instalado primeiro, o Administrador de recursos será desabilitado. O exemplo a seguir inicia o Administrador de Recursos. Depois de executada a instrução, o Administrador de Recursos está em execução e pode usar os grupos de cargas de trabalho e pools de recursos predefinidos.

ALTER RESOURCE GOVERNOR RECONFIGURE;

B.Atribuindo novas sessões ao grupo padrão

O exemplo a seguir atribui todas as sessões novas ao grupo de carga de trabalho padrão, removendo qualquer função de classificação existente da configuração do Administrador de Recursos. Quando nenhuma função é designada como uma função de classificação, todas as sessões novas são atribuídas ao grupo de carga de trabalho padrão. Essa alteração só se aplica a sessões novas. As sessões existentes não são afetadas.

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

C.Criando e registrando uma função de classificação

O exemplo a seguir cria uma função de classificação chamada dbo.rgclassifier_v1. A função classifica cada sessão nova com base no nome de usuário ou nome de aplicativo e atribui as consultas e solicitações de sessão a um grupo de carga de trabalho específico. As sessões que não são mapeadas para o usuário especificado ou nomes de aplicativos são atribuídas ao grupo de carga de trabalho padrão. A função de classificação é registrada e a alteração de configuração é aplicada.

-- Store the classifier function in the master database.
USE master;
GO
SET ANSI_NULLS ON;
GO
SET QUOTED_IDENTIFIER ON;
GO
CREATE FUNCTION dbo.rgclassifier_v1() RETURNS sysname 
WITH SCHEMABINDING
AS
BEGIN
-- Declare the variable to hold the value returned in sysname.
    DECLARE @grp_name AS sysname
-- If the user login is 'sa', map the connection to the groupAdmin
-- workload group. 
    IF (SUSER_NAME() = 'sa')
        SET @grp_name = 'groupAdmin'
-- Use application information to map the connection to the groupAdhoc
-- workload group.
    ELSE IF (APP_NAME() LIKE '%MANAGEMENT STUDIO%')
        OR (APP_NAME() LIKE '%QUERY ANALYZER%')
            SET @grp_name = 'groupAdhoc'
-- If the application is for reporting, map the connection to
-- the groupReports workload group.
    ELSE IF (APP_NAME() LIKE '%REPORT SERVER%')
        SET @grp_name = 'groupReports'
-- If the connection does not map to any of the previous groups,
-- put the connection into the default workload group.
    ELSE
        SET @grp_name = 'default'
    RETURN @grp_name
END;
GO
-- Register the classifier user-defined function and update the 
-- the in-memory configuration.
ALTER RESOURCE GOVERNOR WITH (CLASSIFIER_FUNCTION=dbo.rgclassifier_v1);
GO
ALTER RESOURCE GOVERNOR RECONFIGURE;
GO

D.Redefinindo as estatísticas

O exemplo a seguir redefine todas as estatísticas do grupo de carga de trabalho e pool de recursos.

ALTER RESOURCE GOVERNOR RESET STATISTICS;

E.Definindo a opção de MAX_OUTSTANDING_IO_PER_VOLUME

O exemplo a seguir define a opção de MAX_OUTSTANDING_IO_PER_VOLUME para 20.

ALTER RESOURCE GOVERNOR
WITH (MAX_OUTSTANDING_IO_PER_VOLUME = 20); 

Consulte também

Referência

CREATE RESOURCE POOL (Transact-SQL)

ALTER RESOURCE POOL (Transact-SQL)

DROP RESOURCE POOL (Transact-SQL)

CREATE WORKLOAD GROUP (Transact-SQL)

ALTER WORKLOAD GROUP (Transact-SQL)

DROP WORKLOAD GROUP (Transact-SQL)

sys.dm_resource_governor_workload_groups (Transact-SQL)

sys.dm_resource_governor_resource_pools (Transact-SQL)

Conceitos

Administrador de Recursos