Sdílet prostřednictvím


sys.dm_os_sys_info (Transact-SQL)

platí pro:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytický platformní systém (PDW)

Vrátí různé sady užitečných informací o počítači a o prostředcích dostupných a spotřebovaných SQL Serverem.

Poznámka:

Pokud to chcete volat ze služby Azure Synapse Analytics nebo systému PDW (Analytics Platform System), použijte název sys.dm_pdw_nodes_os_sys_info. Tato syntaxe není podporována bezserverovým fondem SQL ve službě Azure Synapse Analytics.

Název sloupce Datový typ Popis a poznámky specifické pro verzi
cpu_ticks bigint Určuje aktuální počet kontrol procesoru. Z čítače RDTSC procesoru se získávají z čítače RDTSC procesoru. Jedná se o monotonicky rostoucí číslo. Není nulovatelný.
ms_ticks bigint Určuje počet milisekund od spuštění počítače. Není nulovatelný.
cpu_count int Určuje počet logických procesorů v systému. Není nulovatelný.

Ve službě Azure SQL Database může tento sloupec vrátit počet logických procesorů na počítači, který je hostitelem databáze nebo elastického fondu. Pokud chcete určit počet logických procesorů dostupných pro databázi nebo elastický fond, použijte cpu_limit sloupec v sys.dm_user_db_resource_governance.
hyperthread_ratio int Určuje poměr počtu logických nebo fyzických jader vystavených jedním balíčkem fyzického procesoru. Není nulovatelný.
physical_memory_in_bytes bigint Platí pro: SQL Server 2008 (10.0.x) a SQL Server 2008 R2 (10.50.x).

Určuje celkové množství fyzické paměti v počítači. Není nulovatelný.
physical_memory_kb bigint Platí pro: SQL Server 2012 (11.x) a novější verze

Určuje celkové množství fyzické paměti v počítači. Není nulovatelný.

Ve službě Azure SQL Database tento sloupec vrátí celkové množství fyzické paměti na počítači, který je hostitelem databáze nebo elastického fondu. K určení množství fyzické paměti dostupné pro databázi nebo elastický fond použijte process_memory_limit_mb sloupec v sys.dm_os_job_object.
virtual_memory_in_bytes bigint Platí pro: SQL Server 2008 (10.0.x) a SQL Server 2008 R2 (10.50.x).

Množství virtuální paměti dostupné pro proces v uživatelském režimu. Tuto hodnotu lze použít k určení, jestli byl SQL Server spuštěn pomocí přepínače 3 GB.
virtual_memory_kb bigint Platí pro: SQL Server 2012 (11.x) a novější verze

Určuje celkový objem virtuálního adresního prostoru dostupného pro proces v uživatelském režimu. Není nulovatelný.
bpool_committed int Platí pro: SQL Server 2008 (10.0.x) a SQL Server 2008 R2 (10.50.x).

Představuje potvrzenou paměť v kilobajtech (KB) ve správci paměti. Nezahrnuje vyhrazenou paměť ve správci paměti. Není nulovatelný.
committed_kb bigint Platí pro: SQL Server 2012 (11.x) a novější verze

Představuje potvrzenou paměť v kilobajtech (KB) ve správci paměti. Nezahrnuje vyhrazenou paměť ve správci paměti. Není nulovatelný.
bpool_commit_target int Platí pro: SQL Server 2008 (10.0.x) a SQL Server 2008 R2 (10.50.x).

Představuje množství paměti v kilobajtech (kB), které může správce paměti SQL Serveru využívat.
committed_target_kb bigint Platí pro: SQL Server 2012 (11.x) a novější verze

Představuje množství paměti v kilobajtech (kB), které může správce paměti SQL Serveru využívat. Cílová částka se vypočítá pomocí několika vstupů, jako je:

- aktuální stav systému včetně jeho zatížení
– paměť požadovaná aktuálními procesy
– množství paměti nainstalované v počítači
- parametry konfigurace

Pokud committed_target_kb je větší než committed_kb, správce paměti se pokusí získat více paměti. Pokud committed_target_kb je menší než committed_kb, správce paměti se pokusí zmenšit velikost potvrzené paměti. Vždy committed_target_kb obsahuje odcizenou a vyhrazenou paměť. Není nulovatelný.
bpool_visible int Platí pro: SQL Server 2008 (10.0.x) a SQL Server 2008 R2 (10.50.x).

Počet 8kB vyrovnávacích pamětí ve fondu vyrovnávacích pamětí, které jsou přímo přístupné v procesním virtuálním adresního prostoru. Pokud nepoužíváte rozšíření AWE (Address Windowing Extensions), pokud fond vyrovnávací paměti získá cíl paměti (bpool_committed = bpool_commit_target), hodnota bpool_visible se rovná hodnotě bpool_committed. Při použití AWE na 32bitové verzi SQL Serveru představuje bpool_visible velikost okna mapování AWE používaného pro přístup k fyzické paměti přidělené fondu vyrovnávací paměti. Velikost tohoto okna mapování je svázaná s adresním prostorem procesu, takže viditelná částka je menší než potvrzená částka. Tuto hodnotu lze dále snížit interními komponentami, které spotřebovávají paměť pro jiné účely než databázové stránky. Pokud je hodnota bpool_visible příliš nízká, může dojít k chybám nedostatku paměti.
visible_target_kb bigint Platí pro: SQL Server 2012 (11.x) a novější verze

Je to stejné jako committed_target_kb. Není nulovatelný.
stack_size_in_bytes int Určuje velikost zásobníku volání pro každé vlákno vytvořené SQL Serverem. Není nulovatelný.
os_quantum bigint Představuje kvantový úkol bez preemptivní úlohy měřený v milisekundách. Kvantové (v sekundách) = os_quantum / rychlost hodin procesoru. Není nulovatelný.
os_error_mode int Určuje režim chyby procesu SQL Serveru. Není nulovatelný.
os_priority_class int Určuje třídu priority procesu SQL Serveru. Nullable.

32 = Normální. Protokol chyb říká, že SQL Server začíná na normálním základu priority (7).
128 = Vysoká. Protokol chyb říká, že SQL Server běží v základu s vysokou prioritou (13).

Další informace najdete v tématu Konfigurace zvýšení priority (možnost konfigurace serveru).
max_workers_count int Představuje maximální počet pracovních procesů, které lze vytvořit. Není nulovatelný.
scheduler_count int Představuje počet uživatelských plánovačů nakonfigurovaných v procesu SQL Serveru. Není nulovatelný.
scheduler_total_count int Představuje celkový počet plánovačů na SQL Serveru. Není nulovatelný.
deadlock_monitor_serial_number int Určuje ID aktuální sekvence sledování vzájemného zablokování. Není nulovatelný.
sqlserver_start_time_ms_ticks bigint ms_tick Představuje číslo při posledním spuštění SQL Serveru. Porovnejte aktuální ms_ticks sloupec. Není nulovatelný.
sqlserver_start_time datetime Určuje datum a čas posledního spuštění SQL Serveru místního systému. Není nulovatelný.

Informace v mnoha dalších zobrazeních dynamické správy SQL Serveru zahrnují pouze aktivitu od posledního spuštění databázového stroje. Tento sloupec slouží k vyhledání posledního času spuštění databázového stroje SQL Serveru.
affinity_type int Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Určuje typ spřažení procesoru serveru, který se aktuálně používá. Není nulovatelný. Další informace naleznete v tématu ALTER SERVER CONFIGURATION (Transact-SQL).

1 = MANUAL
2 = AUTO
affinity_type_desc nvarchar(60) Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Popisuje affinity_type sloupec. Není nulovatelný.

MANUAL = spřažení bylo nastaveno alespoň pro jeden procesor.
AUTO = SQL Server může volně přesouvat vlákna mezi procesory.
process_kernel_time_ms bigint Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Celková doba v milisekundách strávená všemi vlákny SQL Serveru v režimu jádra Tato hodnota může být větší než jedna hodina procesoru, protože zahrnuje čas pro všechny procesory na serveru. Není nulovatelný.
process_user_time_ms bigint Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Celková doba v milisekundách strávená všemi vlákny SQL Serveru v uživatelském režimu Tato hodnota může být větší než jedna hodina procesoru, protože zahrnuje čas pro všechny procesory na serveru. Není nulovatelný.
time_source int Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Označuje rozhraní API, které SQL Server používá k načtení času na zdi. Není nulovatelný.

0 = QUERY_PERFORMANCE_COUNTER
1 = MULTIMEDIA_TIMER
time_source_desc nvarchar(60) Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Popisuje time_source sloupec. Není nulovatelný.

QUERY_PERFORMANCE_COUNTER = rozhraní API QueryPerformanceCounter načítá čas hodin zdí.
MULTIMEDIA_TIMER = Rozhraní API časovače multimédií , které načítá nástěnný čas.
virtual_machine_type int Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Určuje, jestli je SQL Server spuštěný ve virtualizovaném prostředí. Není nulovatelný.

0 = NONE
1 = HYPERVISOR
2 = OTHER
virtual_machine_type_desc nvarchar(60) Platí pro: SQL Server 2008 R2 (10.50.x) a novější verze.

Popisuje virtual_machine_type sloupec. Není nulovatelný.

NONE = SQL Server není spuštěný uvnitř virtuálního počítače.
HYPERVISOR = SQL Server běží na virtuálním počítači hostovaném hypervisorem operačního systému (hostitelský operační systém, který využívá virtualizaci s podporou hardwaru).
OTHER = SQL Server běží uvnitř virtuálního počítače hostovaného operačním systémem, který nepoužívá hardwarového asistenta, jako je virtuální počítač Microsoftu.
softnuma_configuration int platí pro: SQL Server 2016 (13.x) a novější verze.

Určuje způsob konfigurace uzlů NUMA. Není nulovatelný.

0 = OFF označuje výchozí hardware.
1 = Automatizované soft-NUMA
2 = Ruční soft-NUMA prostřednictvím registru
softnuma_configuration_desc nvarchar(60) platí pro: SQL Server 2016 (13.x) a novější verze.

OFF = funkce Soft-NUMA je vypnutá.
ON = SQL Server automaticky určuje velikosti uzlů NUMA pro Soft-NUMA
MANUAL = Ručně nakonfigurovaná technologie soft-NUMA
process_physical_affinity nvarchar(3072) Platí pro: Počínaje SQL Serverem 2017 (14.x).

Určeno pouze pro informační účely. Není podporováno. Budoucí kompatibilita není zaručena.
sql_memory_model int Platí pro: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 a novější verze.

Určuje model paměti používaný SQL Serverem k přidělení paměti. Není nulovatelný.

1 = Konvenční model paměti
2 = Zamknout stránky v paměti
3 = Velké stránky v paměti
sql_memory_model_desc nvarchar(60) Platí pro: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 a novější verze.

Určuje model paměti používaný SQL Serverem k přidělení paměti. Není nulovatelný.

CONVENTIONAL = SQL Server používá k přidělení paměti konvenční model paměti. Toto je výchozí model paměti databázového stroje, pokud účet služby SQL Serveru nemá během spouštění oprávnění k uzamčení stránek v paměti.
LOCK_PAGES = SQL Server používá k přidělení paměti zamykací stránky v paměti. Toto je výchozí správce paměti databázového stroje, pokud má účet služby SQL Server oprávnění "Zamknout stránky v paměti" během spouštění SQL Serveru.
LARGE_PAGES = SQL Server používá k přidělení paměti velké stránky v paměti. SQL Server používá alokátor Large Pages k přidělení paměti pouze s edicí Enterprise, pokud má účet služby SQL Serveru během spuštění serveru oprávnění Uzamknout stránky v paměti a když je zapnut příznak trasování 834.
pdw_node_id int Platí pro: Azure Synapse Analytics, Systém platformy Analytics (PDW)

Identifikátor uzlu, na který je tato distribuce zapnutá.
socket_count int Platí pro: SQL Server 2016 (13.x) SP2 a novější verze.

Určuje počet soketů procesoru dostupných v systému.
cores_per_socket int Platí pro: SQL Server 2016 (13.x) SP2 a novější verze.

Určuje počet procesorů na soket dostupný v systému.
numa_node_count int Platí pro: SQL Server 2016 (13.x) SP2 a novější verze.

Určuje počet uzlů NUMA dostupných v systému. Tento sloupec obsahuje fyzické uzly NUMA a měkké uzly NUMA.
container_type int Platí pro: SQL Server 2017 (14.x) a novější verze

Určuje typ kontejneru SQL Serveru, který běží uvnitř. Není nulovatelný.

0 (výchozí) = NONE
1 = LINUX CONTAINER
2 = WINDOWS SERVER CONTAINER
3 = HYPER-V CONTAINER
container_type_desc nvarchar(60) Platí pro: SQL Server 2017 (14.x) a novější verze

Popisuje container_type sloupec. Není nulovatelný.

NONE = SQL Server není spuštěný v kontejneru.
LINUX CONTAINER = SQL Server běží v kontejneru Linuxu.
WINDOWS SERVER CONTAINER = SQL Server běží v kontejneru Windows Serveru.
HYPER-V CONTAINER = SQL Server běží v kontejneru Hyper-V.

Povolení

Na SQL Serveru 2019 (15.x) a starších verzích a SQL Managed Instance vyžadujete VIEW SERVER STATE oprávnění.

Na SQL Serveru 2022 (16.x) a novějších verzích vyžadujete VIEW SERVER PERFORMANCE STATE oprávnění k serveru.

U cílů služby Azure SQL Database Basic, S0 a S1 a pro databáze v elastických fondech se vyžaduje účet správce serveru , účet správce Microsoft Entra nebo členství v ##MS_ServerStateReader##roli serveru . U všech ostatních cílů VIEW DATABASE STATE služby SQL Database se vyžaduje buď oprávnění k databázi, nebo členství v ##MS_ServerStateReader## roli serveru.