Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
platí pro:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
databáze SQL v Microsoft Fabric
Vrací paměťové objekty, které jsou aktuálně alokovány SQL Serverem. Můžete sys.dm_os_memory_objects použít k analýze využití paměti a k identifikaci možných úniků paměti.
Poznámka:
Pro označení z Azure Synapse Analytics nebo Analytics Platform System (PDW) použijte název sys.dm_pdw_nodes_os_memory_objects. Tato syntaxe není podporována bezserverovým fondem SQL ve službě Azure Synapse Analytics.
| Název sloupce | Datový typ | Description |
|---|---|---|
| memory_object_address | varbinary(8) | Adresa paměťového objektu. Není možné nastavit jako null. |
| parent_address | varbinary(8) | Adresa objektu rodičovské paměťi. Je nullable. |
| pages_allocated_count | int |
Platí pro: SQL Server 2008 (10.0.x) až SQL Server 2008 R2 (10.50.x). Počet stránek přidělených tímto objektem. Není možné nastavit jako null. |
| pages_in_bytes | bigint |
platí pro: SQL Server 2012 (11.x) a novější. Množství paměti v bajtech, které je alokováno touto instancí paměťového objektu. Není možné nastavit jako null. |
| creation_options | int | Pouze interní použití. Je nullable. |
| bytes_used | bigint | Pouze interní použití. Je nullable. |
| type | nvarchar(60) | Typ paměťového objektu. To označuje nějakou komponentu, ke které tento paměťový objekt patří, nebo funkci tohoto paměťového objektu. Je nullable. |
| název | varchar(128) | Pouze interní použití. Nullable. |
| memory_node_id | smallint | ID paměťového uzlu, který tento paměťový objekt používá. Není možné nastavit jako null. |
| creation_time | datetime | Pouze interní použití. Je nullable. |
| max_pages_allocated_count | int |
Platí pro: SQL Server 2008 (10.0.x) až SQL Server 2008 R2 (10.50.x). Maximální počet stránek přidělených tímto paměťovým objektem. Není možné nastavit jako null. |
| page_size_in_bytes | int |
platí pro: SQL Server 2012 (11.x) a novější. Velikost stránek v bajtech přidělených tímto objektem. Není možné nastavit jako null. |
| max_pages_in_bytes | bigint | Maximální množství paměti, které kdy tento paměťový objekt využil. Není možné nastavit jako null. |
| page_allocator_address | varbinary(8) | Paměťová adresa alokátoru stránky. Není možné nastavit jako null. Pro více informací viz sys.dm_os_memory_clerks (Transact-SQL). |
| creation_stack_address | varbinary(8) | Pouze interní použití. Je nullable. |
| sequence_num | int | Pouze interní použití. Je nullable. |
| partition_type | int |
platí pro: SQL Server 2016 (13.x) a novější. Typ partition: 0 - Objekt nepartitionovatelné paměti 1 - Objekt paměti s partitionovatelnou částí, momentálně není rozdělen na particování 2 - Objekt paměti s partitionořitelnou částí, rozdělený uzlem NUMA. V prostředí s jedním uzlem NUMA je to ekvivalentní 1. 3 - Objekt paměti s rozdělováním, rozdělený CPU. |
| contention_factor | skutečné |
platí pro: SQL Server 2016 (13.x) a novější. Hodnota určující spor na tomto paměťovém objektu, kde 0 znamená žádný spor. Hodnota se aktualizuje vždy, když byl proveden určitý počet alokací paměti, což odráží spory během tohoto období. Platí pouze pro objekty paměti bezpečné pro vlákna. |
| waiting_tasks_count | bigint |
platí pro: SQL Server 2016 (13.x) a novější. Počet čekání na tento paměťový objekt. Tento čítač se zvyšuje pokaždé, když je paměť alokována z tohoto paměťového objektu. Přírůstek je počet úkolů, které momentálně čekají na přístup k tomuto paměťovému objektu. Platí pouze pro objekty paměti bezpečné pro vlákna. To je hodnota nejlepšího úsilí bez záruky správnosti. |
| exclusive_access_count | bigint |
platí pro: SQL Server 2016 (13.x) a novější. Specifikuje, jak často byl tento paměťový objekt výhradně přístupný. Platí pouze pro objekty paměti bezpečné pro vlákna. To je hodnota nejlepšího úsilí bez záruky správnosti. |
| pdw_node_id | int |
platí pro: Azure Synapse Analytics, Analytics Platform System (PDW) Identifikátor uzlu, na který je tato distribuce zapnutá. |
partition_type, contention_factor, waiting_tasks_count a exclusive_access_count zatím nejsou implementovány v SQL Database.
Povolení
Na SQL Serveru a službě SQL Managed Instance vyžaduje VIEW SERVER STATE oprávnění.
U cílů služby SQL Database Basic, S0 a S1 a pro databáze v elastických fondech se vyžaduje účet správce serveru , účet správce Microsoft Entra nebo členství v ##MS_ServerStateReader##roli serveru . U všech ostatních cílů VIEW DATABASE STATE služby SQL Database se vyžaduje buď oprávnění k databázi, nebo členství v ##MS_ServerStateReader## roli serveru.
Oprávnění pro SQL Server 2022 a novější
Vyžaduje oprávnění ZOBRAZIT STAV VÝKONU SERVERU na serveru.
Poznámky
Paměťové objekty jsou hromady. Poskytují alokace s jemnější granularitou než ty, které poskytují paměťoví úředníci. Komponenty SQL Serveru používají paměťové objekty místo paměťových clerků. Paměťové objekty používají rozhraní alokátoru stránek paměťového clerku k alokaci stránek. Paměťové objekty nepoužívají virtuální ani sdílená paměťová rozhraní. V závislosti na vzorech alokace mohou komponenty vytvářet různé typy paměťových objektů pro alokaci oblastí libovolné velikosti.
Typická velikost stránky paměťového objektu je 8 KB. Nicméně objekty s inkrementální pamětí mohou mít velikost stránek od 512 bajtů do 8 KB.
Poznámka:
Velikost stránky není maximální přidělení. Místo toho je velikost stránky granularita alokace, kterou podporuje alokátor stránek a kterou implementuje paměťový úředník. Můžete žádat o alokace větší než 8 KB z paměťových objektů.
Examples
Následující příklad vrací množství paměti přidělené každému typu paměťového objektu.
SELECT SUM (pages_in_bytes) as 'Bytes Used', type
FROM sys.dm_os_memory_objects
GROUP BY type
ORDER BY 'Bytes Used' DESC;
GO
Viz také
Zobrazení dynamické správy související s operačním systémem SQL Server (Transact-SQL)
sys.dm_os_memory_clerks (Transact-SQL)