sys.dm_os_process_memory (Transact-SQL)

Van toepassing op:SQL ServerAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform Systeem (PDW)

De meeste geheugenallocaties die aan de SQL Server-procesruimte worden toegeschreven, worden beheerd via interfaces die het mogelijk maken deze allocaties te volgen en te verantwoorden. Geheugentoewijzingen kunnen echter worden uitgevoerd in de SQL Server-adresruimte die interne geheugenbeheerroutines omzeilt. Waarden worden verkregen via aanroepen naar het basisbesturingssysteem. Ze worden niet gemanipuleerd door interne methoden van SQL Server, behalve wanneer het toestel wordt aangepast voor vergrendelde of grote pagina-allocaties.

Alle teruggegeven waarden die geheugengroottes aangeven, worden weergegeven in kilobytes (KB). De kolom total_virtual_address_space_reserved_kb is een duplicaat van virtual_memory_in_bytes uit sys.dm_os_sys_info.

De volgende tabel geeft een volledig beeld van de adresruimte van het proces.

Note

Om dit te noemen vanuit Azure Synapse Analytics of Analytics Platform System (PDW), gebruik de naam sys.dm_pdw_nodes_os_process_memory. Deze syntaxis wordt niet ondersteund door een serverloze SQL-pool in Azure Synapse Analytics.

Kolomnaam Gegevenstype Beschrijving
physical_memory_in_use_kb bigint Geeft de processet aan in KB, zoals gerapporteerd door het besturingssysteem, evenals de getraceerde allocaties met behulp van grote pagina-API's. Niet nullwaarde.
large_page_allocations_kb bigint Specificeert fysiek geheugen dat wordt toegewezen door gebruik te maken van grote pagina-API's. Niet nullwaarde.
locked_page_allocations_kb bigint Specificeert geheugenpagina's die in het geheugen zijn vergrendeld. Niet nullwaarde.
total_virtual_address_space_kb bigint Geeft de totale grootte aan van het gebruikersmodusgedeelte van de virtuele adresruimte. Niet nullwaarde.
virtual_address_space_reserved_kb bigint Geeft de totale hoeveelheid virtuele adresruimte aan die door het proces is gereserveerd. Niet nullwaarde.
virtual_address_space_committed_kb bigint Geeft de hoeveelheid gereserveerde virtuele adresruimte aan die is toegewijd of toegewezen aan fysieke pagina's. Niet nullwaarde.
virtual_address_space_available_kb bigint Geeft de hoeveelheid virtuele adresruimte aan die momenteel vrij is. Niet nullwaarde.

Opmerking: Vrije regio's die kleiner zijn dan de allocatiegranulariteit kunnen bestaan. Deze regio's zijn niet beschikbaar voor toewijzingen.
page_fault_count bigint Geeft het aantal paginafouten aan dat door het SQL Server-proces wordt veroorzaakt. Niet nullwaarde.
memory_utilization_percentage int Geeft het percentage van het toegewezen geheugen aan dat in de werkset zit. Niet nullwaarde.
available_commit_limit_kb bigint Geeft aan hoeveel geheugen beschikbaar is om door het proces te worden gecommit. Niet nullwaarde.
process_physical_memory_low bit Geeft aan dat het proces reageert op meldingen over een laag fysiek geheugen. Niet nullwaarde.
process_virtual_memory_low bit Geeft aan dat er een laag virtueel geheugen is gedetecteerd. Niet nullwaarde.
pdw_node_id int van toepassing op: Azure Synapse Analytics, Analytics Platform System (PDW)

De id voor het knooppunt waarop deze distributie zich bevindt.

Permissions

Op SQL Server is SERVER STATE-toestemming vereist VIEW op de server.

Voor SQL Server en SQL Managed Instance is VIEW SERVER STATE machtiging vereist.

Op SQL Database Basic, S0en S1 servicedoelstellingen, en voor databases in elastische pools, is het serverbeheerder--account, het Microsoft Entra-beheerdersaccount of lidmaatschap van de ##MS_ServerStateReader##-server functie vereist. Voor alle andere SQL Database-servicedoelstellingen is de VIEW DATABASE STATE machtiging voor de database of het lidmaatschap van de ##MS_ServerStateReader##-serverfunctie vereist.

Machtigingen voor SQL Server 2022 en hoger

Vereist VIEW SERVER PERFORMANCE STATE toestemming op de server.

Zie ook

Dynamische beheerweergaven en -functies (Transact-SQL)
Dynamische beheerweergaven van SQL Server-besturingssysteem (Transact-SQL)