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:Azure SQL Database
Azure SQL Managed Instance
SQL adatbázis a Microsoft Fabric-ben
A legutóbbi memóriakihasználtsági (OOM-) események készletét adja vissza.
Az Azure SQL Database memóriakihasználtságával kapcsolatos további információkért tekintse meg az Azure SQL Database memórián kívüli hibáinak elhárítását ismertető témakört.
| Oszlop név | Adattípus | Leírás |
|---|---|---|
event_time |
datetime | OOM-esemény ideje. Nem lehet null értékű. |
oom_cause |
tinyint | Az OOM kiváltó okát jelző numerikus érték. Az OOM okát heurisztikus algoritmus határozza meg, és véges fokú megbízhatósággal rendelkezik. Nem lehet null értékű. |
oom_cause_desc |
nvarchar(30) | A .oom_cause Nem lehet null értékű.0. UNKNOWN - OOM-ok nem határozható meg1. HEKATON_POOL_MEMORY_LOW – Az OLTP In-Memory használt erőforráskészletben nincs elegendő memória. További információ: Monitor In-Memory OLTP. 2. MEMORY_LOW - Nem áll rendelkezésre elegendő memória az adatbázismotor folyamatához3. OS_MEMORY_PRESSURE - OOM az operációs rendszer külső memóriaterhelése miatt4. OS_MEMORY_PRESSURE_SQL - OOM más adatbázismotor-példány(ok) külső memóriaterhelése miatt5. NON_SOS_MEMORY_LEAK - OOM a nem SOS memóriában szivárgás miatt, például betöltött modulok6. SERVERLESS_MEMORY_RECLAMATION – Kiszolgáló nélküli adatbázisban lévő memóriavisszahíváshoz kapcsolódó OOM7. MEMORY_LEAK - OOM az SOS-memória szivárgása miatt8. SLOW_BUFFER_POOL_SHRINK - OOM, mert a pufferkészlet nem szabadított fel elég gyorsan memóriát a memória nyomása alatt9. INTERNAL_POOL – Nincs elegendő memória a belső erőforráskészletben10. SYSTEM_POOL – Nincs elegendő memória egy rendszererőforrás-készletben11. QUERY_MEMORY_GRANTS - OOM a lekérdezések által birtokolt nagy memóriahasználat miatt12. REPLICAS_AND_AVAILABILITY – OOM az SloSecSharedPool erőforráskészlet számítási feladatai miatt |
available_physical_memory_mb |
Int | Elérhető fizikai memória megabájtban. Nem lehet null értékű. |
initial_job_object_memory_limit_mb |
Int | Feladatobjektumok memóriakorlátja az adatbázismotor indításakor megabájtban. A feladatobjektumokról további információt az Erőforrás-szabályozás című témakörben talál. Nullázható. |
current_job_object_memory_limit_mb |
Int | Feladatobjektum aktuális memóriakorlátja megabájtban. Nullázható. |
process_memory_usage_mb |
Int | A folyamatmemória teljes kihasználtsága megabájtban a példány szerint. Nem lehet null értékű. |
non_sos_memory_usage_mb |
Int | Nem SOS-használat megabájtban, beleértve az SOS által létrehozott szálakat, a nem SOS-összetevők által létrehozott szálakat, a betöltött DLL-eket stb. Nem null értékű. |
committed_memory_target_mb |
Int | Az SOS megabájtban megabájtban megcélozza a memóriát. Nem lehet null értékű. |
committed_memory_mb |
Int | AZ SOS által lekötött memória megabájtban van megabájtban. Nem lehet null értékű. |
allocation_potential_memory_mb |
Int | Az adatbázismotor-példány számára rendelkezésre álló memória az új foglalásokhoz megabájtban. Nem lehet null értékű. |
oom_factor |
tinyint | Olyan érték, amely az OOM-eseményhez kapcsolódó további információkat nyújt, csak belső használatra. Nem lehet null értékű. |
oom_factor_desc |
nvarchar(30) | A .oom_factor Csak belső használatra. Nem lehet null értékű.0 - UNDEFINED1 - ALLOCATION_POTENTIAL2 - BLOCK_ALLOCATOR3 - ESCAPE_TIMEOUT4 - FAIL_FAST5 - MEMORY_POOL6 - EMERGENCY_ALLOCATOR7 - VIRTUAL_ALLOC8 - SIMULATED9 - BUF_ALLOCATOR10 - QUERY_MEM_QUEUE11 - FRAGMENT12 - INIT_DESCRIPTOR13 - MEMORY_POOL_PRESSURE14 - DESCRIPTOR_ALLOCATOR15 - DESCRIPTOR_ALLOCATOR_ESCAPE |
oom_resource_pools |
nvarchar(4000) | Memórián kívüli erőforráskészletek, beleértve az egyes készletek memóriahasználati statisztikáit. Ez az információ JSON-értékként van megadva. Nullázható. |
top_memory_clerks |
nvarchar(4000) | A legnépszerűbb memóriajegyzők memóriahasználat szerint, beleértve az egyes írnokok memóriahasználati statisztikáit. Ez az információ JSON-értékként van megadva. Nullázható. |
top_resource_pools |
nvarchar(4000) | A legnépszerűbb erőforráskészletek memóriahasználat szerint, beleértve az egyes erőforráskészletek memóriahasználati statisztikáit. Ez az információ JSON-értékként van megadva. Nullázható. |
possible_leaked_memory_clerks |
nvarchar(4000) | Memóriajegyzők, akiknek kiszivárgott a memóriája. Heurisztika alapján, véges magabiztossággal. Ez az információ JSON-értékként van megadva. Nullázható. |
possible_non_sos_leaked_memory_mb |
Int | Kiszivárgott nem SOS-memória megabájtban, ha van ilyen. Heurisztika alapján, véges magabiztossággal. Nullázható. |
Engedélyek
A felügyelt Azure SQL-példányon engedélyre van szükség VIEW SERVER PERFORMANCE STATE .
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_ServerPerformanceStateReader##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 PERFORMANCE STATE engedélyére, vagy a ##MS_ServerPerformanceStateReader## kiszolgálói szerepkör tagságára van szükség.
Megjegyzések
A nézetben minden sor egy memóriahiányos (OOM) eseményt jelöl, amely az adatbázismotorban történt. Nem minden OOM-esemény rögzíthető. A régebbi OOM-események eltűnhetnek az eredményhalmazból, ha újabb OOM-események történnek. Az eredményhalmaz nem marad meg az adatbázismotor újraindítása során.
Jelenleg ez a DMV látható, de nem támogatott az SQL Server 2022 (16.x) és SQL Server 2025 (17.x) verziókban.
summarized_oom_snapshot kiterjesztett esemény
A summarized_oom_snapshot kiterjesztett esemény az esemény munkamenetének része, amely leegyszerűsíti a system_health memóriaen kívüli események észlelését. Minden summarized_oom_snapshot kiterjesztett esemény egy sornak felel meg a következőben sys.dm_os_out_of_memory_events: . További információ : Blog: A memóriakihasználtság hibáinak elhárításának új módja az adatbázismotorban.
Példák
Egy. Az összes elérhető OOM-esemény lekérése
Az alábbi példa az aktuálisan csatlakoztatott adatbázist üzemeltető adatbázismotor legutóbbi időpontja szerint rendezett összes eseményadatot adja vissza.
SELECT *
FROM sys.dm_os_out_of_memory_events
ORDER BY event_time DESC;
B. Az egyes OOM-események legfontosabb memóriajegyzőinek lekérése
Az alábbi példa az eseményadatok egy részhalmazát adja vissza, és kibontja a JSON-adatokat az top_memory_clerks oszlopban. Az eredményhalmaz minden sora egy adott OOM-esemény legfelső memóriajegyzőjét jelöli.
SELECT event_time,
oom_cause_desc,
oom_factor_desc,
oom_resource_pools,
top_resource_pools,
clerk_type_name,
clerk_page_allocated_mb,
clerk_vm_committed_mb
FROM sys.dm_os_out_of_memory_events
CROSS APPLY OPENJSON(top_memory_clerks)
WITH (
clerk_type_name sysname '$.clerk_type_name',
clerk_page_allocated_mb bigint '$.page_allocated_mb',
clerk_vm_committed_mb bigint '$.vm_committed_mb'
)
ORDER BY event_time DESC, clerk_page_allocated_mb DESC;
C. Az egyes OOM-események legfontosabb erőforráskészleteinek lekérése
Az alábbi példa az eseményadatok egy részhalmazát adja vissza, és kibontja a JSON-adatokat az top_resource_pools oszlopban. Az eredményhalmaz minden sora egy adott OOM-esemény legfelső erőforráskészletét jelöli.
SELECT event_time,
oom_cause_desc,
oom_factor_desc,
oom_resource_pools,
top_memory_clerks,
pool_name,
pool_allocations_mb,
pool_target_mb,
pool_is_oom
FROM sys.dm_os_out_of_memory_events
CROSS APPLY OPENJSON(top_resource_pools)
WITH (
pool_name sysname '$.pool_name',
pool_allocations_mb bigint '$.allocations_mb',
pool_target_mb bigint '$.pool_target_mb',
pool_is_oom bit '$.is_oom'
)
ORDER BY event_time DESC, pool_allocations_mb DESC;
Kapcsolódó tartalom
- sys.resource_stats
- sys.server_resource_stats
- sys.dm_db_resource_stats (Azure SQL Database)
- Teljesítmény optimalizálása memóriabeli technológiákkal az Azure SQL Database
- Teljesítmény optimalizálása memóriabeli technológiákkal a felügyelt Azure SQL-példányokban
- OLTP-tároló monitorozása In-Memory az Azure SQL Database-ben
- Felügyelt Azure SQL-példány In-Memory OLTP-tároló figyelése
- Memóriahiánnyal összefüggő hibák elhárítása az Azure SQL Database-zel