Aracılığıyla paylaş


sys.dm_os_sys_info (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)

Bilgisayar ve SQL Server tarafından kullanılabilen ve kullanılan kaynaklar hakkında çeşitli yararlı bilgiler kümesi döndürür.

Uyarı

Bunu Azure Synapse Analytics veya Analytics Platform Sistemi'nden (PDW) çağırmak için adını sys.dm_pdw_nodes_os_sys_infokullanın. Bu söz dizimi, Azure Synapse Analytics'teki sunucusuz SQL havuzu tarafından desteklenmez.

Sütun adı Veri türü Açıklamaya ve sürüme özgü notlar
cpu_ticks bigint Geçerli CPU denetim sayısını belirtir. CPU keneleri, işlemcinin RDTSC sayacından alınır. Monoton olarak artan bir sayı. Boş değer atanamaz.
ms_ticks bigint Bilgisayarın başlamasından bu yana geçen milisaniye sayısını belirtir. Boş değer atanamaz.
cpu_count int Sistemdeki mantıksal CPU sayısını belirtir. Boş değer atanamaz.

Azure SQL Veritabanı'nda bu sütun, veritabanını veya elastik havuzu barındıran makinedeki mantıksal CPU sayısını döndürebilir. Veritabanı veya elastik havuz için kullanılabilen mantıksal CPU sayısını belirlemek için sys.dm_user_db_resource_governance sütununu cpu_limit kullanın.
hyperthread_ratio int Bir fiziksel işlemci paketi tarafından kullanıma sunulan mantıksal veya fiziksel çekirdek sayısının oranını belirtir. Boş değer atanamaz.
physical_memory_in_bytes bigint Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ve SQL Server 2008 R2 (10.50.x).

Makinedeki toplam fiziksel bellek miktarını belirtir. Boş değer atanamaz.
physical_memory_kb bigint Şunlar için geçerlidir: SQL Server 2012 (11.x) ve sonraki sürümleri.

Makinedeki toplam fiziksel bellek miktarını belirtir. Boş değer atanamaz.

Azure SQL Veritabanı'nda bu sütun, veritabanını veya elastik havuzu barındıran makinedeki toplam fiziksel bellek miktarını döndürür. Veritabanı veya elastik havuz için kullanılabilir fiziksel bellek miktarını belirlemek için sys.dm_os_job_object sütununu process_memory_limit_mb kullanın.
virtual_memory_in_bytes bigint Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ve SQL Server 2008 R2 (10.50.x).

Kullanıcı modunda işlem için kullanılabilir sanal bellek miktarı. Bu değer, SQL Server'ın 3 GB anahtarı kullanılarak başlatılıp başlatılmadığını belirlemek için kullanılabilir.
virtual_memory_kb bigint Şunlar için geçerlidir: SQL Server 2012 (11.x) ve sonraki sürümleri.

Kullanıcı modunda işlemin kullanabileceği toplam sanal adres alanı miktarını belirtir. Boş değer atanamaz.
bpool_committed int Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ve SQL Server 2008 R2 (10.50.x).

Bellek yöneticisinde işlenen belleği kilobayt (KB) cinsinden temsil eder. Bellek yöneticisine ayrılmış bellek içermez. Boş değer atanamaz.
committed_kb bigint Şunlar için geçerlidir: SQL Server 2012 (11.x) ve sonraki sürümleri.

Bellek yöneticisinde işlenen belleği kilobayt (KB) cinsinden temsil eder. Bellek yöneticisine ayrılmış bellek içermez. Boş değer atanamaz.
bpool_commit_target int Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ve SQL Server 2008 R2 (10.50.x).

SQL Server bellek yöneticisi tarafından kullanılabilecek bellek miktarını kilobayt (KB) cinsinden temsil eder.
committed_target_kb bigint Şunlar için geçerlidir: SQL Server 2012 (11.x) ve sonraki sürümleri.

SQL Server bellek yöneticisi tarafından kullanılabilecek bellek miktarını kilobayt (KB) cinsinden temsil eder. Hedef tutar aşağıdakiler gibi birkaç giriş kullanılarak hesaplanır:

- yükü de dahil olmak üzere sistemin geçerli durumu
- geçerli işlemler tarafından istenen bellek
- bilgisayarda yüklü bellek miktarı
- yapılandırma parametreleri

değerinden committed_kbbüyüksecommitted_target_kb, bellek yöneticisi daha fazla bellek elde etmeye çalışır. değerinden committed_kbküçüksecommitted_target_kb, bellek yöneticisi işlenen bellek miktarını küçültmeye çalışır. her committed_target_kb zaman çalınan ve ayrılmış bellek içerir. Boş değer atanamaz.
bpool_visible int Şunlar için geçerlidir: SQL Server 2008 (10.0.x) ve SQL Server 2008 R2 (10.50.x).

İşlem sanal adres alanında doğrudan erişilebilen arabellek havuzundaki 8 KB arabellek sayısı. Adres Pencereleme Uzantıları 'nı (AWE) kullanmadığınızda, arabellek havuzu bellek hedefini ()bpool_committed = bpool_commit_target elde ettiğinde değeri bpool_visible değerine bpool_committedeşittir. SQL Server'ın 32 bit sürümünde AWE kullanırken, bpool_visible arabellek havuzu tarafından ayrılan fiziksel belleğe erişmek için kullanılan AWE eşleme penceresinin boyutunu temsil eder. Bu eşleme penceresinin boyutu işlem adres alanına bağlıdır ve bu nedenle görünür tutar taahhüt edilen tutardan daha küçüktür. Bu değer, veritabanı sayfaları dışındaki amaçlarla bellek kullanan iç bileşenler tarafından daha da azaltılabilir. değeri bpool_visible çok düşükse yetersiz bellek hataları alabilirsiniz.
visible_target_kb bigint Şunlar için geçerlidir: SQL Server 2012 (11.x) ve sonraki sürümleri.

ile aynıdır committed_target_kb. Boş değer atanamaz.
stack_size_in_bytes int SQL Server tarafından oluşturulan her iş parçacığı için çağrı yığınının boyutunu belirtir. Boş değer atanamaz.
os_quantum bigint Önemsiz olmayan bir görevin Kuantum değerini milisaniye cinsinden temsil eder. Kuantum (saniye) = os_quantum / CPU saat hızı. Boş değer atanamaz.
os_error_mode int SQL Server işlemi için hata modunu belirtir. Boş değer atanamaz.
os_priority_class int SQL Server işlemi için öncelik sınıfını belirtir. Nullable.

32 = Normal. Hata günlüğü, SQL Server'ın normal öncelik tabanında (7) başlatıldığını belirtiyor.
128 = Yüksek. Hata günlüğü, SQL Server'ın yüksek öncelikli tabanda (13) çalıştığını belirtiyor.

Daha fazla bilgi için bkz. Öncelik artırmayı yapılandırma (sunucu yapılandırma seçeneği).
max_workers_count int Oluşturulabilecek en fazla çalışan sayısını temsil eder. Boş değer atanamaz.
scheduler_count int SQL Server işleminde yapılandırılan kullanıcı zamanlayıcılarının sayısını temsil eder. Boş değer atanamaz.
scheduler_total_count int SQL Server'daki toplam zamanlayıcı sayısını temsil eder. Boş değer atanamaz.
deadlock_monitor_serial_number int Geçerli kilitlenme izleyici dizisinin kimliğini belirtir. Boş değer atanamaz.
sqlserver_start_time_ms_ticks bigint SQL Server'ın ms_tick en son ne zaman başladığını gösterir. Geçerli ms_ticks sütunla karşılaştırın. Boş değer atanamaz.
sqlserver_start_time datetime SQL Server'ın en son başlattığı yerel sistem tarih ve saatini belirtir. Boş değer atanamaz.

Diğer birçok SQL Server DMV'sindeki bilgiler yalnızca son veritabanı altyapısı başlangıcından bu yana etkinlik içerir. Son SQL Server Veritabanı Altyapısı başlangıç zamanını bulmak için bu sütunu kullanın.
affinity_type int Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

Şu anda kullanılmakta olan sunucu CPU işlemi benzenşiminin türünü belirtir. Boş değer atanamaz. Daha fazla bilgi için bkz. ALTER SERVER CONFIGURATION (Transact-SQL).

1 = MANUAL
2 = AUTO
affinity_type_desc nvarchar(60) Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

affinity_type Sütunu açıklar. Boş değer atanamaz.

MANUAL = benzenşim en az bir CPU için ayarlandı.
AUTO = SQL Server, iş parçacıklarını CPU'lar arasında serbestçe taşıyabilir.
process_kernel_time_ms bigint Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

Çekirdek modunda tüm SQL Server iş parçacıkları tarafından harcanan milisaniye cinsinden toplam süre. Bu değer, sunucudaki tüm işlemciler için zamanı içerdiğinden tek bir işlemci saatinden daha büyük olabilir. Boş değer atanamaz.
process_user_time_ms bigint Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

Kullanıcı modunda tüm SQL Server iş parçacıkları tarafından harcanan toplam süre milisaniye cinsindendir. Bu değer, sunucudaki tüm işlemciler için zamanı içerdiğinden tek bir işlemci saatinden daha büyük olabilir. Boş değer atanamaz.
time_source int Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

SQL Server'ın duvar saati saatini almak için kullandığı API'yi gösterir. Boş değer atanamaz.

0 = QUERY_PERFORMANCE_COUNTER
1 = MULTIMEDIA_TIMER
time_source_desc nvarchar(60) Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

time_source Sütunu açıklar. Boş değer atanamaz.

QUERY_PERFORMANCE_COUNTER = QueryPerformanceCounter API'si duvar saati saatini alır.
MULTIMEDIA_TIMER = Duvar saati saatini alan multimedya zamanlayıcı API'si.
virtual_machine_type int Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

SQL Server'ın sanallaştırılmış bir ortamda çalışıp çalışmadığını gösterir. Boş değer atanamaz.

0 = NONE
1 = HYPERVISOR
2 = OTHER
virtual_machine_type_desc nvarchar(60) Şunlar için geçerlidir: SQL Server 2008 R2 (10.50.x) ve sonraki sürümleri.

virtual_machine_type Sütunu açıklar. Boş değer atanamaz.

NONE = SQL Server bir sanal makine içinde çalışmıyor.
HYPERVISOR = SQL Server, hiper yönetici (donanım destekli sanallaştırma kullanan bir konak işletim sistemi) tarafından barındırılan bir sanal makine içinde çalışır.
OTHER = SQL Server, Microsoft Sanal Bilgisayar gibi donanım yardımcısı kullanmayan bir işletim sistemi tarafından barındırılan bir sanal makine içinde çalışıyor.
softnuma_configuration int Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümleri.

NUMA düğümlerinin nasıl yapılandırıldığını belirtir. Boş değer atanamaz.

0 = OFF donanım varsayılanı gösterir
1 = Otomatik geçici NUMA
2 = Kayıt defteri aracılığıyla el ile soft-NUMA
softnuma_configuration_desc nvarchar(60) Şunlar için geçerlidir: SQL Server 2016 (13.x) ve sonraki sürümleri.

OFF = Soft-NUMA özelliği kapalı
ON = SQL Server, Soft-NUMA için NUMA düğüm boyutlarını otomatik olarak belirler
MANUAL = El ile yapılandırılan geçici NUMA
process_physical_affinity nvarchar(3072) Şunlar için geçerlidir: SQL Server 2017 (14.x) ile başlayarak.

Yalnızca bilgilendirme amacıyla tanımlanır. Desteklenmiyor. Gelecekteki uyumluluk garanti edilmemektedir.
sql_memory_model int Şunlar için geçerlidir: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 ve sonraki sürümleri.

SQL Server tarafından bellek ayırmak için kullanılan bellek modelini belirtir. Boş değer atanamaz.

1 = Geleneksel bellek modeli
2 = Bellekteki sayfaları kilitleme
3 = Bellekteki büyük sayfalar
sql_memory_model_desc nvarchar(60) Şunlar için geçerlidir: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 ve sonraki sürümleri.

SQL Server tarafından bellek ayırmak için kullanılan bellek modelini belirtir. Boş değer atanamaz.

CONVENTIONAL = SQL Server bellek ayırmak için Geleneksel Bellek modelini kullanıyor. SQL Server hizmet hesabının başlatma sırasında Bellekte Sayfaları Kilitleme ayrıcalıkları olmadığında bu varsayılan Veritabanı Altyapısı bellek modelidir.
LOCK_PAGES = SQL Server bellek ayırmak için Bellekteki Sayfaları Kilitle'yi kullanıyor. SQL Server hizmeti hesabının SQL Server başlatma sırasında "Sayfaları bellekte kilitle" ayrıcalığı olduğunda bu varsayılan Veritabanı Altyapısı bellek yöneticisidir.
LARGE_PAGES = SQL Server bellek ayırmak için Bellekte Büyük Sayfalar kullanıyor. SQL Server, sunucu başlatma sırasında ve izleme bayrağı 834 açıkken SQL Server hizmet hesabı "Bellekteki sayfaları kilitle" ayrıcalığına sahip olduğunda yalnızca Enterprise sürümüyle bellek ayırmak için Büyük Sayfalar ayırıcısını kullanır.
pdw_node_id int Şunlar 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ı.
socket_count int Şunlar için geçerlidir: SQL Server 2016 (13.x) SP2 ve sonraki sürümleri.

Sistemde kullanılabilen işlemci yuvalarının sayısını belirtir.
cores_per_socket int Şunlar için geçerlidir: SQL Server 2016 (13.x) SP2 ve sonraki sürümleri.

Sistemdeki yuva başına kullanılabilir işlemci sayısını belirtir.
numa_node_count int Şunlar için geçerlidir: SQL Server 2016 (13.x) SP2 ve sonraki sürümleri.

Sistemde kullanılabilen NUMA düğümlerinin sayısını belirtir. Bu sütun fiziksel NUMA düğümlerini ve yumuşak NUMA düğümlerini içerir.
container_type int Şunlar için geçerlidir: SQL Server 2017 (14.x) ve sonraki sürümleri.

SQL Server'ın içinde çalıştığı kapsayıcının türünü belirtir. Boş değer atanamaz.

0 (varsayılan) = NONE
1 = LINUX CONTAINER
2 = WINDOWS SERVER CONTAINER
3 = HYPER-V CONTAINER
container_type_desc nvarchar(60) Şunlar için geçerlidir: SQL Server 2017 (14.x) ve sonraki sürümleri.

container_type Sütunu açıklar. Boş değer atanamaz.

NONE = SQL Server bir kapsayıcıda çalışmıyor.
LINUX CONTAINER = SQL Server bir Linux kapsayıcısında çalışıyor.
WINDOWS SERVER CONTAINER = SQL Server bir Windows Server kapsayıcısında çalışıyor.
HYPER-V CONTAINER = SQL Server bir Hyper-V kapsayıcısında çalışıyor.

Permissions

SQL Server 2019 (15.x) ve önceki sürümlerde ve SQL Yönetilen Örneğinde izin gerekir VIEW SERVER STATE .

SQL Server 2022 (16.x) ve sonraki sürümlerinde sunucuda izin gerekir VIEW SERVER PERFORMANCE STATE .

Azure SQL Veritabanı Temel, S0 ve S1 hizmet hedeflerinde ve elastik havuzlardaki veritabanları için sunucu yönetici hesabı, Microsoft Entra yönetici hesabı veya ##MS_ServerStateReader## ü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.