Exibições de gerenciamento dinâmico do sistema
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure Azure Synapse Analytics PDW (Analytics Platform System) Ponto de extremidade de análise do SQL Warehouse no Microsoft Fabric
As DMVs (exibições de gerenciamento dinâmico) e as DMFs (funções de gerenciamento dinâmico) retornam informações de estado do servidor que podem ser usadas para monitorar a integridade de uma instância do servidor, diagnosticar problemas e ajustar o desempenho.
Importante
Elas retornam dados de estado internos específicos de implementação. Seus esquemas e os dados retornados podem ser alterados em versões futuras do SQL Server. Por isso, as exibições e funções de gerenciamento dinâmico, em versões futuras, podem não ser compatíveis com as exibições e funções de gerenciamento dinâmico nessa versão. Por exemplo, em versões futuras do SQL Server, a Microsoft pode aumentar a definição de qualquer exibição de gerenciamento dinâmico adicionando colunas ao final da lista de colunas. Não é recomendável o uso da sintaxe SELECT * FROM dynamic_management_view_name
no código de produção, pois o número de colunas retornado pode mudar e quebrar seu aplicativo.
Há dois tipos de exibições e funções de gerenciamento dinâmico:
Exibições e funções de gerenciamento dinâmico de escopo de servidor. Requerem a permissão VIEW SERVER STATE no servidor. Para SQL Server 2022 e posterior, VIEW SERVER PERFORMANCE STATE é necessário ou VIEW SERVER SECURITY STATE é necessário para algumas DMVs relacionadas à segurança.
Exibições e funções de gerenciamento dinâmico de escopo de banco de dados. Requerem permissão VIEW DATABASE STATE no banco de dados. Para SQL Server 2022 e posterior, VIEW DATABASE PERFORMANCE STATE é necessário ou VIEW DATABASE SECURITY STATE é necessário para algumas DMVs relacionadas à segurança.
Consultar exibições de gerenciamento dinâmico
As exibições de gerenciamento dinâmico podem ser referenciadas em instruções Transact-SQL usando nomes de duas, três ou quatro partes. Por sua vez, as funções de gerenciamento dinâmico podem ser referenciadas em instruções Transact-SQL usando nomes de duas ou três partes. Exibições e funções de gerenciamento dinâmico não podem ser referenciadas em instruções Transact-SQL usando nomes de uma parte.
Todas as exibições e funções de gerenciamento dinâmico estão no esquema sys e seguem a convenção de nomenclatura dm_*. Quando você usa uma exibição ou função de gerenciamento dinâmico, é preciso prefixar o nome da exibição ou função usando o esquema sys. Por exemplo, para consultar a exibição de gerenciamento dinâmico dm_os_wait_stats, execute a seguinte consulta:
SELECT wait_type, wait_time_ms
FROM sys.dm_os_wait_stats;
Permissões necessárias
A consulta de uma exibição ou função de gerenciamento dinâmico requer a permissão SELECT no objeto e a permissão VIEW SERVER STATE ou VIEW DATABASE STATE. Isso permite restringir seletivamente o acesso de um usuário ou logon a exibições e funções de gerenciamento dinâmico. Para fazer isso, primeiro crie o usuário e master
, em seguida, negue a permissão SELECT do usuário nas exibições ou funções de gerenciamento dinâmico que você não deseja que ele acesse. Depois disso, o usuário não poderá selecionar entre essas exibições ou funções de gerenciamento dinâmico, independentemente do contexto do banco de dados do usuário.
Observação
Como DENY prevalece, se um usuário tiver recebido permissões VIEW SERVER STATE, mas não a permissão VIEW DATABASE STATE, ele poderá verificar as informações de servidor, mas não as de banco de dados.
Nesta seção
As exibições e as funções de gerenciamento dinâmico foram organizadas nas seguintes categorias.
Exibições de Gerenciamento Dinâmico de Grupos de Disponibilidade AlwaysOn - Funções
Captura de dados de alteração - sys.dm_cdc_errors
Controle de alterações - sys.dm_tran_commit_table
Exibições de gerenciamento dinâmico relacionadas ao Common Language Runtime (Transact-SQL)
Espelhamento de banco de dados - sys.dm_db_mirroring_auto_page_repair
Exibições de gerenciamento dinâmico relacionadas ao banco de dados (Transact-SQL)
Funções e exibições de gerenciamento dinâmico relacionadas à execução (Transact-SQL)
Exibições de gerenciamento dinâmico de eventos estendidos
Exibições de gerenciamento dinâmico FILESTREAM e FileTable (Transact-SQL)
Modos de exibição de gerenciamento dinâmico de pesquisa semântica e de texto completo - Funções
Exibições e funções de gerenciamento dinâmico de replicação geográfica (Banco de Dados SQL do Azure)
Exibições e funções de gerenciamento dinâmico relacionadas ao índice (Transact-SQL)
Exibições e funções de gerenciamento dinâmico relacionadas à E/S (Transact-SQL)
Exibições de gerenciamento dinâmico de tabela com otimização de memória (Transact-SQL)
Funções e exibições de gerenciamento dinâmico relacionadas a objetos (Transact-SQL)
Notificações de consulta - sys.dm_qn_subscriptions
Exibições de gerenciamento dinâmico relacionadas à replicação (Transact-SQL)
Exibições de gerenciamento dinâmico relacionadas ao Administrador de Recursos (Transact-SQL)
Funções e exibições de gerenciamento dinâmico relacionadas à segurança (Transact-SQL)
Exibições e funções de gerenciamento dinâmico do servidor (Transact-SQL)
Exibições de gerenciamento dinâmico relacionadas ao Service Broker (Transact-SQL)
Dados Espaciais - sys.dm_db_objects_disabled_on_compatibility_level_change
Exibições de gerenciamento dinâmico de SQL e data warehouse paralelo
Exibições de gerenciamento dinâmico relacionadas ao sistema operacional do SQL Server (Transact-SQL)
Exibições de gerenciamento dinâmico relacionadas ao Stretch Database (Transact-SQL)
Funções e exibições de gerenciamento dinâmico relacionadas à transação (Transact-SQL)