sys.dm_os_sys_info (Transact-SQL)
S’applique à : SQL Server Azure SQL Database Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System (PDW)
Retourne un ensemble divers d’informations utiles sur l’ordinateur, ainsi que sur les ressources disponibles et consommées par SQL Server.
Remarque
Pour appeler cela à partir d’Azure Synapse Analytics ou du système de plateforme Analytics (PDW), utilisez le nom sys.dm_pdw_nodes_os_sys_info
. Cette syntaxe n’est pas prise en charge par le pool SQL serverless dans Azure Synapse Analytics.
Nom de la colonne | Type de données | Notes spécifiques à la description et aux versions |
---|---|---|
cpu_ticks |
bigint | Spécifie le nombre de vérifications du processeur actuel. Les cycles de l'UC sont fournis par le compteur RDTSC du processeur. C’est un nombre monotoniquement croissant. N'accepte pas la valeur NULL. |
ms_ticks |
bigint | Spécifie le nombre de millisecondes écoulées depuis le démarrage de l'ordinateur. N'accepte pas la valeur NULL. |
cpu_count |
int | Spécifie le nombre d'UC logiques dans le système. N'accepte pas la valeur NULL. Dans Azure SQL Database, cette colonne peut retourner le nombre de processeurs logiques sur la machine hébergeant la base de données ou le pool élastique. Pour déterminer le nombre de processeurs logiques disponibles pour la base de données ou le pool élastique, utilisez la cpu_limit colonne dans sys.dm_user_db_resource_governance. |
hyperthread_ratio |
int | Spécifie le rapport entre le nombre de noyaux logiques et le nombre de noyaux physiques exposés par un package de processeurs physiques. N'accepte pas la valeur NULL. |
physical_memory_in_bytes |
bigint | S’applique à : SQL Server 2008 (10.0.x) et SQL Server 2008 R2 (10.50.x). Spécifie la quantité totale de mémoire physique sur l'ordinateur. N'accepte pas la valeur NULL. |
physical_memory_kb |
bigint | S’applique à : SQL Server 2012 (11.x) et versions ultérieures. Spécifie la quantité totale de mémoire physique sur l'ordinateur. N'accepte pas la valeur NULL. Dans Azure SQL Database, cette colonne retourne la quantité totale de mémoire physique sur la machine hébergeant la base de données ou le pool élastique. Pour déterminer la quantité de mémoire physique disponible pour la base de données ou le pool élastique, utilisez la process_memory_limit_mb colonne dans sys.dm_os_job_object. |
virtual_memory_in_bytes |
bigint | S’applique à : SQL Server 2008 (10.0.x) et SQL Server 2008 R2 (10.50.x). Quantité de mémoire virtuelle dont dispose le processus en mode utilisateur. Cette valeur peut être utilisée pour déterminer si SQL Server a été démarré à l’aide d’un commutateur de 3 Go. |
virtual_memory_kb |
bigint | S’applique à : SQL Server 2012 (11.x) et versions ultérieures. Spécifie la quantité totale d'espace d'adressage virtuel disponible au processus en mode utilisateur. N'accepte pas la valeur NULL. |
bpool_committed |
int | S’applique à : SQL Server 2008 (10.0.x) et SQL Server 2008 R2 (10.50.x). Représente la mémoire validée, en kilo-octet (Ko), dans le gestionnaire de mémoire. N’inclut pas de mémoire réservée dans le gestionnaire de mémoire. N'accepte pas la valeur NULL. |
committed_kb |
bigint | S’applique à : SQL Server 2012 (11.x) et versions ultérieures. Représente la mémoire validée, en kilo-octet (Ko), dans le gestionnaire de mémoire. N’inclut pas de mémoire réservée dans le gestionnaire de mémoire. N'accepte pas la valeur NULL. |
bpool_commit_target |
int | S’applique à : SQL Server 2008 (10.0.x) et SQL Server 2008 R2 (10.50.x). Représente la quantité de mémoire, en kilo-octet (KB), qui peut être consommée par le gestionnaire de mémoire SQL Server. |
committed_target_kb |
bigint | S’applique à : SQL Server 2012 (11.x) et versions ultérieures. Représente la quantité de mémoire, en kilo-octet (KB), qui peut être consommée par le gestionnaire de mémoire SQL Server. La quantité cible est calculée à l’aide de plusieurs entrées telles que : - état actuel du système, y compris sa charge - mémoire demandée par les processus actuels - quantité de mémoire installée sur l’ordinateur - Paramètres de configuration S’il committed_target_kb est supérieur committed_kb à , le gestionnaire de mémoire tente d’obtenir plus de mémoire. Si committed_target_kb elle est inférieure committed_kb à , le gestionnaire de mémoire tente de réduire la quantité de mémoire validée. La committed_target_kb mémoire toujours volée et réservée est toujours comprise. N'accepte pas la valeur NULL. |
bpool_visible |
int | S’applique à : SQL Server 2008 (10.0.x) et SQL Server 2008 R2 (10.50.x). Nombre de tampons de 8 Ko dans le pool de mémoires tampons directement accessibles dans l'espace d'adressage virtuel de processus. Lorsque vous n’utilisez pas les extensions de fenêtrage d’adresses (AWE), lorsque le pool de mémoires tampons obtient sa cible de mémoire ( bpool_committed = bpool_commit_target ), la valeur d’égal bpool_visible à la valeur de bpool_committed . Lorsque vous utilisez AWE sur une version 32 bits de SQL Server, bpool_visible représente la taille de la fenêtre de mappage AWE utilisée pour accéder à la mémoire physique allouée par le pool de mémoires tampons. La taille de cette fenêtre de mappage est liée par l’espace d’adressage du processus et la quantité visible est donc inférieure à la quantité validée. Cette valeur peut être réduite davantage par les composants internes consommant de la mémoire, à des fins autres que les pages de base de données. Si la valeur est bpool_visible trop faible, vous risquez de recevoir des erreurs de mémoire insuffisante. |
visible_target_kb |
bigint | S’applique à : SQL Server 2012 (11.x) et versions ultérieures. Est identique à committed_target_kb . N'accepte pas la valeur NULL. |
stack_size_in_bytes |
int | Spécifie la taille de la pile des appels pour chaque thread créé par SQL Server. N'accepte pas la valeur NULL. |
os_quantum |
bigint | Représente le quantum associé à une tâche non préemptive, mesuré en millisecondes. Quantum (en secondes) = os_quantum / vitesse d’horloge du processeur. N'accepte pas la valeur NULL. |
os_error_mode |
int | Spécifie le mode d’erreur du processus SQL Server. N'accepte pas la valeur NULL. |
os_priority_class |
int | Spécifie la classe de priorité pour le processus SQL Server. Autorise la valeur Null.32 = Normal. Le journal des erreurs indique que SQL Server démarre à la base de priorité normale (7 ).128 = Élevé. Le journal des erreurs indique que SQL Server s’exécute à une base de priorité élevée (13 ).Pour plus d’informations, consultez Configurer l’amélioration de la priorité (option de configuration du serveur). |
max_workers_count |
int | Représente le nombre maximum de processus de travail pouvant être créés. N'accepte pas la valeur NULL. |
scheduler_count |
int | Représente le nombre de planificateurs d’utilisateurs configurés dans le processus SQL Server. N'accepte pas la valeur NULL. |
scheduler_total_count |
int | Représente le nombre total de planificateurs dans SQL Server. N'accepte pas la valeur NULL. |
deadlock_monitor_serial_number |
int | Spécifie l'identificateur de la séquence en cours du moniteur d'interblocage. N'accepte pas la valeur NULL. |
sqlserver_start_time_ms_ticks |
bigint | Représente le ms_tick nombre au dernier démarrage de SQL Server. Comparez à la colonne actuelle ms_ticks . N'accepte pas la valeur NULL. |
sqlserver_start_time |
datetime | Spécifie la date et l’heure du dernier démarrage de SQL Server du système local. N'accepte pas la valeur NULL. Les informations contenues dans de nombreux autres DMV SQL Server incluent uniquement l’activité depuis le dernier démarrage du moteur de base de données. Utilisez cette colonne pour rechercher la dernière heure de démarrage de SQL Server Moteur de base de données. |
affinity_type |
int | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Spécifie le type d'affinité de processus UC serveur en cours d'utilisation. N'accepte pas la valeur NULL. Pour plus d’informations, consultez ALTER SERVER CONFIGURATION (Transact-SQL). 1 = MANUAL 2 = AUTO |
affinity_type_desc |
nvarchar(60) | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Décrit la affinity_type colonne. N'accepte pas la valeur NULL.MANUAL = l’affinité a été définie pour au moins un processeur.AUTO = SQL Server peut déplacer librement des threads entre les processeurs. |
process_kernel_time_ms |
bigint | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Durée totale en millisecondes passées par tous les threads SQL Server en mode noyau. Cette valeur peut être plus grande qu'une horloge de processeur unique parce qu'elle inclut l'heure pour tous les processeurs sur le serveur. N'accepte pas la valeur NULL. |
process_user_time_ms |
bigint | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Durée totale en millisecondes passées par tous les threads SQL Server en mode utilisateur. Cette valeur peut être plus grande qu'une horloge de processeur unique parce qu'elle inclut l'heure pour tous les processeurs sur le serveur. N'accepte pas la valeur NULL. |
time_source |
int | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Indique l’API que SQL Server utilise pour récupérer l’heure de l’horloge du mur. N'accepte pas la valeur NULL. 0 = QUERY_PERFORMANCE_COUNTER 1 = MULTIMEDIA_TIMER |
time_source_desc |
nvarchar(60) | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Décrit la time_source colonne. N'accepte pas la valeur NULL.QUERY_PERFORMANCE_COUNTER = l’API QueryPerformanceCounter récupère l’heure d’horloge du mur.MULTIMEDIA_TIMER = API du minuteur multimédia qui récupère l’heure du mur. |
virtual_machine_type |
int | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Indique si SQL Server est en cours d’exécution dans un environnement virtualisé. N'accepte pas la valeur NULL. 0 = NONE 1 = HYPERVISOR 2 = OTHER |
virtual_machine_type_desc |
nvarchar(60) | S’applique à : SQL Server 2008 R2 (10.50.x) et versions ultérieures. Décrit la virtual_machine_type colonne. N'accepte pas la valeur NULL.NONE = SQL Server n’est pas en cours d’exécution à l’intérieur d’une machine virtuelle.HYPERVISOR = SQL Server s’exécute à l’intérieur d’une machine virtuelle hébergée par un système d’exploitation exécutant un hyperviseur (système d’exploitation hôte qui utilise la virtualisation assistée par le matériel).OTHER = SQL Server s’exécute à l’intérieur d’une machine virtuelle hébergée par un système d’exploitation qui n’utilise pas d’assistant matériel tel que Microsoft Virtual PC. |
softnuma_configuration |
int | S’applique à : SQL Server 2016 (13.x) et versions ultérieures. Spécifie la façon dont les nœuds NUMA sont configurés. N'accepte pas la valeur NULL. 0 = OFF indique la valeur par défaut du matériel1 = Soft-NUMA automatisé2 = Soft-NUMA manuel via le registre |
softnuma_configuration_desc |
nvarchar(60) | S’applique à : SQL Server 2016 (13.x) et versions ultérieures.OFF = La fonctionnalité Soft-NUMA est désactivéeON = SQL Server détermine automatiquement les tailles de nœud NUMA pour Soft-NUMAMANUAL = Configuration manuelle de soft-NUMA |
process_physical_affinity |
nvarchar(3072) | S’applique à : à partir de SQL Server 2017 (14.x). Identifié à titre d'information uniquement. Non pris en charge. La compatibilité future n'est pas garantie. |
sql_memory_model |
int | S’applique à : SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 et versions ultérieures. Spécifie le modèle de mémoire utilisé par SQL Server pour allouer de la mémoire. N'accepte pas la valeur NULL. 1 = Modèle de mémoire conventionnelle2 = Verrouiller des pages en mémoire3 = Pages volumineuses en mémoire |
sql_memory_model_desc |
nvarchar(60) | S’applique à : SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 et versions ultérieures. Spécifie le modèle de mémoire utilisé par SQL Server pour allouer de la mémoire. N'accepte pas la valeur NULL. CONVENTIONAL = SQL Server utilise le modèle de mémoire conventionnelle pour allouer de la mémoire. Il s’agit d’un modèle de mémoire par défaut Moteur de base de données lorsque le compte de service SQL Server ne dispose pas de privilèges de verrouillage des pages de mémoire pendant le démarrage.LOCK_PAGES = SQL Server utilise les pages de verrouillage en mémoire pour allouer de la mémoire. Il s’agit du gestionnaire de mémoire par défaut Moteur de base de données lorsque le compte de service SQL Server dispose du privilège « Verrouiller les pages en mémoire » pendant le démarrage de SQL Server.LARGE_PAGES = SQL Server utilise de grandes pages en mémoire pour allouer de la mémoire. SQL Server utilise l’allocateur Pages volumineuses pour allouer de la mémoire uniquement avec l’édition Entreprise lorsque le compte de service SQL Server dispose du privilège « Verrouiller les pages en mémoire » pendant le démarrage du serveur et lorsque l’indicateur de trace 834 est activé. |
pdw_node_id |
int | S’applique à : Azure Synapse Analytics, Analytics Platform System (PDW) Identificateur du nœud sur lequel cette distribution est activée. |
socket_count |
int | S’applique à : SQL Server 2016 (13.x) SP2 et versions ultérieures. Spécifie le nombre de sockets de processeur disponibles sur le système. |
cores_per_socket |
int | S’applique à : SQL Server 2016 (13.x) SP2 et versions ultérieures. Spécifie le nombre de processeurs par socket disponible sur le système. |
numa_node_count |
int | S’applique à : SQL Server 2016 (13.x) SP2 et versions ultérieures. Spécifie le nombre de nœuds NUMA disponibles sur le système. Cette colonne inclut des nœuds NUMA physiques et des nœuds NUMA souples. |
container_type |
int | S’applique à : SQL Server 2017 (14.x) et versions ultérieures. Spécifie le type de conteneur SQL Server en cours d’exécution. N'accepte pas la valeur NULL. 0 (valeur par défaut) = NONE 1 = LINUX CONTAINER 2 = WINDOWS SERVER CONTAINER 3 = HYPER-V CONTAINER |
container_type_desc |
nvarchar(60) | S’applique à : SQL Server 2017 (14.x) et versions ultérieures. Décrit la container_type colonne. N'accepte pas la valeur NULL.NONE = SQL Server n’est pas en cours d’exécution dans un conteneur.LINUX CONTAINER = SQL Server s’exécute dans un conteneur Linux.WINDOWS SERVER CONTAINER = SQL Server s’exécute dans un conteneur Windows Server.HYPER-V CONTAINER = SQL Server s’exécute dans un conteneur Hyper-V. |
autorisations
Sur SQL Server 2019 (15.x) et les versions antérieures et SQL Managed Instance, vous avez besoin VIEW SERVER STATE
d’autorisations.
Sur SQL Server 2022 (16.x) et versions ultérieures, vous devez disposer VIEW SERVER PERFORMANCE STATE
d’autorisations sur le serveur.
Sur les objectifs de service Azure SQL Database Basic, S0 et S1, et pour les bases de données dans des pools élastiques, le compte d’administrateur du serveur, le compte d’administrateur Microsoft Entra ou l’appartenance au ##MS_ServerStateReader##
rôle serveur est nécessaire. Sur tous les autres objectifs de service SQL Database, l’autorisation VIEW DATABASE STATE
sur la base de données ou l’appartenance au rôle serveur ##MS_ServerStateReader##
est requise.