Vues de gestion dynamique système
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW) SQL analytics endpoint in Microsoft Fabric Warehouse in Microsoft Fabric
Les vues de gestion dynamique (DMV) et les fonctions de gestion dynamique (DMV) retournent les informations d’état du serveur qui peuvent être utilisées pour surveiller l’intégrité d’une instance de serveur, diagnostiquer les problèmes et régler les performances.
Important
Les fonctions et vues de gestion dynamique renvoient des données d'état internes propres à l'implémentation. Leurs schémas et les données qu’ils retournent peuvent changer dans les futures versions de SQL Server. Les fonctions et vues de gestion dynamique des futures versions ne seront donc peut-être pas compatibles avec celles de cette version. Par exemple, dans les futures versions de SQL Server, Microsoft peut augmenter la définition de n’importe quelle vue de gestion dynamique en ajoutant des colonnes à la fin de la liste des colonnes. Nous déconseillons l'utilisation de la syntaxe SELECT * FROM dynamic_management_view_name
dans le code de production car le nombre de colonnes retourné peut changer et altérer votre application.
Il existe deux types de fonctions et vues de gestion dynamique :
les fonctions et vues de gestion dynamique dont l'étendue est définie au niveau du serveur, qui nécessitent l'autorisation VIEW SERVER STATE sur le serveur ; Pour SQL Server 2022 et versions ultérieures, VIEW SERVER PERFORMANCE STATE est requis, ou VIEW SERVER SECURITY STATE est requis pour quelques DMV liées à la sécurité.
Les fonctions et vues de gestion dynamique dont l'étendue est définie au niveau de la base de données, qui nécessitent l'autorisation VIEW DATABASE STATE sur la base de données. Pour SQL Server 2022 et versions ultérieures, VIEW DATABASE PERFORMANCE STATE est requis, ou VIEW DATABASE SECURITY STATE est requis pour quelques DMV liées à la sécurité.
Interroger les vues de gestion dynamique
Les vues de gestion dynamiques peuvent être référencées dans les instructions Transact-SQL à l’aide de noms en deux, trois ou quatre parties. Les fonctions de gestion dynamique, quant à elles, peuvent être référencées dans les instructions Transact-SQL à l’aide de noms en deux ou trois parties. Les vues et fonctions de gestion dynamique ne peuvent pas être référencées dans les instructions Transact-SQL à l’aide de noms en un seul composant.
Toutes les fonctions et vues de gestion dynamique existent dans le schéma sys et respectent la convention de noms dm_*. Lorsque vous utilisez une fonction ou une vue de gestion dynamique, vous devez faire précéder le nom de la vue ou de la fonction du schéma sys. Par exemple, pour effectuer une requête dans la vue de gestion dynamique dm_os_wait_stats, exécutez :
SELECT wait_type, wait_time_ms
FROM sys.dm_os_wait_stats;
Autorisations requises
Une requête sur une fonction ou une vue de gestion dynamique nécessite l'autorisation SELECT sur un objet et l'autorisation VIEW SERVER STATE ou VIEW DATABASE STATE. Cela permet de limiter sélectivement l'accès d'un utilisateur ou d'une connexion aux fonctions et vues de gestion dynamique. Pour ce faire, commencez par créer l’utilisateur, master
puis refusez l’autorisation SELECT utilisateur sur les vues ou fonctions de gestion dynamique auxquelles vous ne souhaitez pas accéder. Après cela, l’utilisateur ne peut pas sélectionner ces vues ou fonctions de gestion dynamique, quel que soit le contexte de base de données de l’utilisateur.
Remarque
Du fait que DENY est prioritaire, si un utilisateur a les autorisations VIEW SERVER STATE mais n'a pas l'autorisation VIEW DATABASE STATE, il peut visualiser des informations au niveau serveur, mais pas au niveau base de données.
Contenu de cette section
Les fonctions et vues de gestion dynamique sont organisées selon les catégories suivantes.
Vues de gestion dynamique des groupes de disponibilité Always On - Fonctions
Capture de données modifiées - sys.dm_cdc_errors
Suivi des modifications - sys.dm_tran_commit_table
Vues de gestion dynamique liées au Common Language Runtime (Transact-SQL)
Mise en miroir de bases de données - sys.dm_db_mirroring_auto_page_repair
Vues de gestion dynamique liées à la base de données (Transact-SQL)
Fonctions et vues de gestion dynamique relatives à l'exécution (Transact-SQL)
Vues de gestion dynamique des Événements étendus
Vues de gestion dynamique FILESTREAM et FileTable (Transact-SQL)
Vues de gestion dynamique de recherche en texte intégral et sémantique - Fonctions
Vues et fonctions de gestion dynamique de géoréplication (Azure SQL Database)
Fonctions et vues de gestion dynamique associées à l’index (Transact-SQL)
Fonctions et vues de gestion dynamique associées aux E/S (Transact-SQL)
Vues de gestion dynamique de table optimisées en mémoire (Transact-SQL)
Vues et fonctions de gestion dynamique relatives aux objets (Transact-SQL)
Notifications de requête - sys.dm_qn_subscriptions
Vues de gestion dynamique associées à la réplication (Transact-SQL)
Vues de gestion dynamique relatives au gouverneur de ressources (Transact-SQL)
Fonctions et vues de gestion dynamique relatives à la sécurité (Transact-SQL)
Vues et fonctions de gestion dynamique du serveur (Transact-SQL)
Vues de gestion dynamique liées à Service Broker (Transact-SQL)
Données spatiales - sys.dm_db_objects_disabled_on_compatibility_level_change
Vues de gestion dynamique SQL et Parallel Data Warehouse
Vues de gestion dynamique SQL Server liées au système d'exploitation (Transact-SQL)
Vues de gestion dynamique liées à Stretch Database (Transact-SQL)
Fonctions et vues de gestion dynamique relatives aux transactions (Transact-SQL)