ALTER RESOURCE GOVERNOR (Transact-SQL)
Este comando é usado para executar as seguintes ações:
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.
Convenções da sintaxe Transact-SQL
Sintaxe
ALTER RESOURCE GOVERNOR
{ DISABLE | RECONFIGURE }
|
WITH ( CLASSIFIER_FUNCTION = { schema_name.function_name | NULL } )
|
RESET STATISTICS
[ ; ]
Argumentos
Termo |
Definição |
||
DISABLE | RECONFIGURE |
DISABLE desabilita o Administrador de Recursos. A desabilitação do Administrador de Recursos gera os seguintes resultados:
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:
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.
|
||
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). |
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
Exige 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 carga 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.
ALTER RESOURCE GOVERNOR RESET STATISTICS;
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)