sys.dm_os_linux_vm_stats (Transact-SQL)

Şunlar için geçerlidir: Linux üzerinde SQL Server 2025 (17.x)

SQL Server 2025 (17.x) Toplu Güncelleştirme (CU) 1 ve sonraki sürümlerinde SQL Server ve sistemde çalışan diğer işlemler ile ilgili ölçümler de dahil olmak üzere Linux işletim sistemi düzeyinde sanal bellek istatistiklerini döndürür.

Sütun adı Veri türü Null olabilir Description
vm_metric_name nvarchar(256) No Sanal bellek ölçüm adı.
count bigint No Bu ölçüme karşılık gelen istatistik.

Permissions

Sunucuda VIEW SERVER PERFORMANCE STATE izin gerektirir.

Açıklamalar

sys.dm_os_linux_vm_stats bellek baskısını, sayfa hatalarını, geri kazanma etkinliğini, tekdüzen olmayan bellek erişimi (NUMA) davranışını analiz etmeye ve SQL Server performansını genel işletim sistemi bellek durumuyla ilişkilendirmenize yardımcı olmak için sistem genelinde bellek gözlemlenebilirliği sağlar.

Her satır, genellikle gibi /proc/vmstatLinux arabirimlerinden alınan tek bir sanal bellek ölçümünü temsil eder. Ölçüm kullanılabilirliği ve anlamı Linux dağıtımına, çekirdek sürümüne ve yapılandırmaya göre farklılık gösterebilir.

Bütünsel izleme için bu DMV'yi Linux'a özgü diğer DMV'lerle kullanın:

Kullanım senaryoları

Yaygın olarak kullanılan sys.dm_os_linux_vm_stats senaryolar şunlardır:

  • Linux konaklarında yetersiz bellek (OOM) olaylarını araştırma.
  • SQL Server bellek belirtilerini işletim sistemi geri kazanma etkinliğiyle ilişkilendirme.
  • Çok düğümlü sistemlerde NUMA ile ilgili bellek davranışını anlama.
  • Doğrudan Transact-SQL'den derin işletim sistemi düzeyinde gözlemlenebilirlik gerçekleştirme.

Examples

A. Tüm sanal bellek istatistiklerini görüntüleme

Aşağıdaki sorgu, Linux çekirdeği tarafından bildirilen tüm kullanılabilir sanal bellek ölçümlerini döndürür:

SELECT *
FROM sys.dm_os_linux_vm_stats;

B. Sayfa hata etkinliğini tanımlama

Aşağıdaki sorgu, bellek baskısını veya verimsiz bellek erişim desenlerini tanımlamaya yardımcı olabilecek sayfa hatasıyla ilgili ölçümleri vurgular:

SELECT vm_metric_name,
       count
FROM sys.dm_os_linux_vm_stats
WHERE vm_metric_name IN ('pgfault', 'pgmajfault');

C. NUMA belleğinin yerelliğini izleme

Düğümler arasında bellek yerelliğini anlamanıza yardımcı olmak için NUMA ile ilgili sanal bellek ölçümlerini döndürür:

SELECT vm_metric_name,
       count
FROM sys.dm_os_linux_vm_stats
WHERE vm_metric_name LIKE 'numa%';

D. Bellek geri kazanma ve sıkıştırma etkinliğini analiz etme

Aşağıdaki sorgu, sistemdeki bellek geri kazanma davranışını ve sıkıştırma baskısını tanılamanıza yardımcı olur:

SELECT vm_metric_name,
       count
FROM sys.dm_os_linux_vm_stats
WHERE vm_metric_name LIKE 'pgsteal%'
      OR vm_metric_name LIKE 'pgscan%'
      OR vm_metric_name LIKE 'compact%';