Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik a következőkre:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitikai Platform System (PDW)
SQL adatbázis a Microsoft Fabric-ben
Visszaadja azokat a memóriaobjektumokat, amelyeket jelenleg az SQL Server foglal el. Használhatod sys.dm_os_memory_objects memóriahasználat elemzésére és lehetséges memóriaszivárgások azonosítására.
Megjegyzés:
Ezt Azure Synapse Analytics vagy Analytics Platform System (PDW) néven lehet használni a sys.dm_pdw_nodes_os_memory_objects. Ezt a szintaxist az Azure Synapse Analytics kiszolgáló nélküli SQL-készlete nem támogatja.
| Oszlop név | Adattípus | Description |
|---|---|---|
| memory_object_address | varbinary(8) | A memóriaobjektum címe. Nem lehet null értékű. |
| parent_address | varbinary(8) | Az parent memory object címe. Null értékű. |
| pages_allocated_count | int |
A következőkre vonatkozik: SQL Server 2008 (10.0.x) és SQL Server 2008 R2 (10.50.x). Az objektum által kijelölt oldalak száma. Nem lehet null értékű. |
| pages_in_bytes | bigint |
A következővonatkozik: SQL Server 2012 (11.x) és újabb. A memória mennyisége bájtokban, amelyet ez a memóriaobjektum példánya foglal el. Nem lehet null értékű. |
| creation_options | int | Csak belső használatra. Null értékű. |
| bytes_used | bigint | Csak belső használatra. Null értékű. |
| type | nvarchar(60) | Memóriaobjektum típusa. Ez azt jelzi, hogy ez a memóriaobjektum egy komponenshez tartozik, vagy a memóriaobjektum függvényét. Null értékű. |
| név | varchar(128) | Csak belső használatra. Nullable. |
| memory_node_id | smallint | Egy memóriacsomópont azonosítója, amelyet ez a memóriaobjektum használ. Nem lehet null értékű. |
| creation_time | datetime | Csak belső használatra. Null értékű. |
| max_pages_allocated_count | int |
A következőkre vonatkozik: SQL Server 2008 (10.0.x) és SQL Server 2008 R2 (10.50.x). A memóriaobjektum által maximális oldalszám. Nem lehet null értékű. |
| page_size_in_bytes | int |
A következővonatkozik: SQL Server 2012 (11.x) és újabb. Az oldalok mérete bájtokban, amelyeket ez az objektum kap. Nem lehet null értékű. |
| max_pages_in_bytes | bigint | Ez a memóriaobjektum által valaha használt maximális memória. Nem lehet null értékű. |
| page_allocator_address | varbinary(8) | Az oldalkijelölő memóriacíme. Nem lehet null értékű. További információért lásd a sys.dm_os_memory_clerks (Transact-SQL) oldalt. |
| creation_stack_address | varbinary(8) | Csak belső használatra. Null értékű. |
| sequence_num | int | Csak belső használatra. Null értékű. |
| partition_type | int |
Az: SQL Server 2016 (13.x) és újabb verziókra vonatkozik. A partíció típusa: 0 - Nem felosztható memóriaobjektum 1 - Felosztható memóriaobjektum, jelenleg nincs felosztva 2 - Partíciós memóriaobjektum, amelyet NUMA csomópont oszt fel. Egy NUMA csomóponttal rendelkező környezetben ez egyenértékű 1-gyel. 3 - Felosztható memóriaobjektum, CPU által partíciózva. |
| contention_factor | valódi |
Az: SQL Server 2016 (13.x) és újabb verziókra vonatkozik. Egy érték, amely megjelöli a vitatást ezen a memóriaobjektumon, ahol 0 azt jelenti, hogy nincs vita. Az értéket frissítik, amikor meghatározott számú memória allokációt végeztek, ami tükrözi az adott időszak alatt zajló vitatkoztatásokat. Csak a szálbiztonsági memóriaobjektumokra vonatkozik. |
| waiting_tasks_count | bigint |
Az: SQL Server 2016 (13.x) és újabb verziókra vonatkozik. A memóriaobjektum várakozásainak száma. Ez a számláló növeli a memóriát minden egyes memóriát ezen a memóriaobjektum részéről. Az increment a jelenleg elérhető feladat száma, amely a memóriaobjektumhoz vár. Csak a szálbiztonsági memóriaobjektumokra vonatkozik. Ez egy legjobb erőfeszítés értéke helyességi garancia nélkül. |
| exclusive_access_count | bigint |
Az: SQL Server 2016 (13.x) és újabb verziókra vonatkozik. Megadja, hogy milyen gyakran volt hozzáférés ehhez a memóriaobjektumhoz kizárólag kizárólagosan. Csak a szálbiztonsági memóriaobjektumokra vonatkozik. Ez egy legjobb erőfeszítés értéke helyességi garancia nélkül. |
| pdw_node_id | int |
A következővonatkozik: Azure Synapse Analytics, Analytics Platform System (PDW) Annak a csomópontnak az azonosítója, amelyen ez a disztribúció található. |
Az partition_type, contention_factor, waiting_tasks_count és exclusive_access_count még nincsenek megvalósítva az SQL Database-ben.
Permissions
Az SQL Serveren és a felügyelt SQL-példányon VIEW SERVER STATE engedély szükséges.
Az SQL Database Alapszintű, S0és S1 szolgáltatás célkitűzésein, valamint rugalmas készletekbenlévő adatbázisok esetében a kiszolgálói rendszergazdai fiókra, a Microsoft Entra rendszergazdai fiókra vagy a ##MS_ServerStateReader##kiszolgálói szerepkör tagságára van szükség. Az SQL Database szolgáltatás minden más célkitűzéséhez vagy az adatbázis VIEW DATABASE STATE engedélyére, vagy a ##MS_ServerStateReader## kiszolgálói szerepkör tagságára van szükség.
Engedélyek az SQL Server 2022-hez és újabb verziókhoz
A KISZOLGÁLÓ TELJESÍTMÉNYÁLLAPOTÁNAK MEGTEKINTÉSE engedélyre van szükség a kiszolgálón.
Megjegyzések
A memóriaobjektumok rengetegetőek. Ezek olyan részletességet biztosítanak, amelyek finomabb részletességűek, mint a memória tisztviselők által biztosítottak. Az SQL Server komponensei memóriaobjektumokat használnak memória dolgozók helyett. A memóriaobjektumok a memória jegyző oldalallokátor interfészét használják az oldalak kijelöléséhez. A memóriaobjektumok nem használnak virtuális vagy megosztott memória interfészeket. Az allokációs mintázatoktól függően a komponensek különböző típusú memóriaobjektumokat hozhatnak létre, amelyek tetszőleges méretű régiókat osztanak ki.
Egy memóriaobjektum tipikus oldalmérete 8 KB. Azonban a inkrementális memóriaobjektumok oldalmérete lehet 512 bájttól 8 KB-ig.
Megjegyzés:
Az oldalméret nem maximális kiosztás. Ehelyett az oldalméret az allokációs granularitás, amelyet egy oldalalosztó támogat, és amelyet memória kezelő valósít meg. 8 KB-nál nagyobb allokációkat kérhetsz memóriaobjektumoktól.
Példák
A következő példa adja vissza az egyes memóriaobjektumtípusok által kijelölt memória mennyiségét.
SELECT SUM (pages_in_bytes) as 'Bytes Used', type
FROM sys.dm_os_memory_objects
GROUP BY type
ORDER BY 'Bytes Used' DESC;
GO
Lásd még
SQL Server operációs rendszerhez kapcsolódó dinamikus felügyeleti nézetek (Transact-SQL)
sys.dm_os_memory_clerks (Transact-SQL)