Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Şunlar için geçerlidir:SQL Server
Azure SQL Veritabanı
Azure SQL Yönetilen Örneği
Azure Synapse Analytics
Analytics Platform Sistemi (PDW)
Microsoft Fabric'te SQL Veritabanı
SQL Server tarafından şu anda tahsis edilen bellek nesnelerini döndürür. sys.dm_os_memory_objects kullanarak bellek kullanımını analiz edebilir ve olası bellek sızıntılarını tespit edebilirsiniz.
Uyarı
Bunu Azure Synapse Analytics veya Analytics Platform System (PDW) olarak adlandırmak için sys.dm_pdw_nodes_os_memory_objects adını kullanın. Bu söz dizimi, Azure Synapse Analytics'teki sunucusuz SQL havuzu tarafından desteklenmez.
| Sütun adı | Veri türü | Description |
|---|---|---|
| memory_object_address | varbinary(8) | Hafıza nesnesinin adresi. Null olamaz. |
| parent_address | varbinary(8) | Ebeveyn bellek nesnesinin adresi. Boş değer atanabilir. |
| pages_allocated_count | int |
Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ile SQL Server 2008 R2 (10.50.x) arasında. Bu nesne tarafından tahsis edilen sayfa sayısı. Null olamaz. |
| pages_in_bytes | bigint |
için geçerlidir: SQL Server 2012 (11.x) ve üzeri. Bu bellek nesnesinin bu örneği tarafından tahsis edilen bayt cinsinden bellek miktarı. Null olamaz. |
| creation_options | int | Yalnızca iç kullanım. Boş değer atanabilir. |
| bytes_used | bigint | Yalnızca iç kullanım. Boş değer atanabilir. |
| type | nvarchar(60) | Hafıza nesnesi türü. Bu, bu bellek nesnesinin ait olduğu bir bileşeni veya bellek nesnesinin işlevini gösterir. Boş değer atanabilir. |
| name | varchar(128) | Yalnızca iç kullanım. Nullable. |
| memory_node_id | smallint | Bu bellek nesnesi tarafından kullanılan bir bellek düğümünün kimliği. Null olamaz. |
| creation_time | datetime | Yalnızca iç kullanım. Boş değer atanabilir. |
| max_pages_allocated_count | int |
Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ile SQL Server 2008 R2 (10.50.x) arasında. Bu bellek nesnesi tarafından tahsis edilen maksimum sayfa sayısı. Null olamaz. |
| page_size_in_bytes | int |
için geçerlidir: SQL Server 2012 (11.x) ve üzeri. Bu nesne tarafından tahsis edilen bayt cinsinden sayfa boyutu. Null olamaz. |
| max_pages_in_bytes | bigint | Bu bellek nesnesi tarafından şimdiye kadar kullanılan maksimum bellek miktarı. Null olamaz. |
| page_allocator_address | varbinary(8) | Sayfa ayırıcısının hafıza adresi. Null olamaz. Daha fazla bilgi için sys.dm_os_memory_clerks (Transact-SQL) sayfasına bakınız. |
| creation_stack_address | varbinary(8) | Yalnızca iç kullanım. Boş değer atanabilir. |
| sequence_num | int | Yalnızca iç kullanım. Boş değer atanabilir. |
| partition_type | int |
için geçerlidir: SQL Server 2016 (13.x) ve üzeri. Bölünme türü: 0 - Bölünemez bellek nesnesi 1 - Bölünebilir bellek nesnesi, şu anda bölünmemiş 2 - NUMA düğümü tarafından bölünmüş bölünebilir bellek nesnesi. Tek bir NUMA düğümü olan bir ortamda bu 1'e eşdeğerdir. 3 - CPU tarafından bölünmüş bölünebilir bellek nesnesi. |
| contention_factor | Gerçek |
için geçerlidir: SQL Server 2016 (13.x) ve üzeri. Bu bellek nesnesi üzerinde çekişme belirten bir değer, 0 ise çatışma yok anlamına gelir. Değer, o dönemde çatışmayı yansıtan belirli sayıda bellek tahsisi yapıldığında güncellenir. Yalnızca iş parçacığı güvenli bellek nesneleri için geçerlidir. |
| waiting_tasks_count | bigint |
için geçerlidir: SQL Server 2016 (13.x) ve üzeri. Bu bellek nesnesi üzerindeki bekleme sayısı. Bu sayaç, bu bellek nesnesinden bellek tahsis edildiğinde artar. Artış, şu anda bu bellek nesnesine erişim için bekleyen görev sayısıdır. Yalnızca iş parçacığı güvenli bellek nesneleri için geçerlidir. Bu, doğruluk garantisi olmadan en iyi çaba değeridir. |
| exclusive_access_count | bigint |
için geçerlidir: SQL Server 2016 (13.x) ve üzeri. Bu bellek nesnesine ne sıklıkla yalnızca erişildiğini belirtir. Yalnızca iş parçacığı güvenli bellek nesneleri için geçerlidir. Bu, doğruluk garantisi olmadan en iyi çaba değeridir. |
| pdw_node_id | int |
için geçerlidir: Azure Synapse Analytics, Analiz Platformu Sistemi (PDW) Bu dağıtımın üzerinde olduğu düğümün tanımlayıcısı. |
partition_type, contention_factor, waiting_tasks_count ve exclusive_access_count henüz SQL Veritabanı'nda uygulanmamıştır.
Permissions
SQL Server ve SQL Yönetilen Örneği'ne VIEW SERVER STATE izni gerekir.
SQL Veritabanı Temel,S0 ve S1 hizmet hedeflerinive elastik havuzlardaki veritabanları için, sunucu yöneticisi hesabı, Microsoft Entra yönetici hesabı veya ##MS_ServerStateReader##sunucu rolü üyeliği gereklidir. Diğer tüm SQL Veritabanı hizmet hedeflerinde, veritabanında VIEW DATABASE STATE izni veya ##MS_ServerStateReader## sunucu rolü üyeliği gereklidir.
SQL Server 2022 ve üzeri için izinler
Sunucuda SUNUCU PERFORMANS DURUMUNU GÖRÜNTÜLE izni gerektirir.
Açıklamalar
Hafıza nesneleri yığınlardır. Bunlar, hafıza memurlarının sağladığı dağıtımlardan daha ince bir ayrıntıya sahip tahsisler sağlar. SQL Server bileşenleri, bellek memurları yerine bellek nesneleri kullanır. Bellek nesneleri, sayfaları tahsis etmek için bellek memurunun sayfa ayırıcı arayüzünü kullanır. Bellek nesneleri sanal veya paylaşılan bellek arayüzleri kullanmaz. Tahsis desenlerine bağlı olarak, bileşenler farklı türde bellek nesneleri oluşturarak rastgele boyuttaki bölgeleri tahsis edebilir.
Bir bellek nesnesi için tipik sayfa boyutu 8 KB'dır. Ancak, artan bellek nesnelerinin sayfa boyutları 512 bayttan 8 KB'a kadar değişebilir.
Uyarı
Sayfa boyutu maksimum bir tahsis değildir. Bunun yerine, sayfa boyutu, bir sayfa ayırıcısı tarafından desteklenen ve bir bellek memuru tarafından uygulanan tahsis granülerliğidir. Bellek nesnelerinden 8 KB'den büyük tahsis talep edebilirsiniz.
Örnekler
Aşağıdaki örnek, her bellek nesne türü tarafından tahsis edilen bellek miktarını geri getirir.
SELECT SUM (pages_in_bytes) as 'Bytes Used', type
FROM sys.dm_os_memory_objects
GROUP BY type
ORDER BY 'Bytes Used' DESC;
GO
Ayrıca bakınız
SQL Server İşletim Sistemiyle İlgili Dinamik Yönetim Görünümleri (Transact-SQL)
sys.dm_os_memory_clerks (Transact-SQL)