Skip to main content
sys.dm_os_sys_info (Transact-SQL)
 

THIS TOPIC APPLIES TO: yesSQL Server (starting with 2008) noAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Возвращает разнородный набор полезных сведений о компьютере, а также о ресурсах, доступных для служб SQL Server и используемых ими.

Примечание: вызывать его из Хранилище данных SQL Azure или Параллельное хранилище данных, используйте имя sys.dm_pdw_nodes_os_sys_info.

Имя столбцаТип данныхОписание и примечания, зависящие от версии
cpu_ticksbigintЗадает текущий счетчик тактов времени ЦП. Метки времени ЦП поступают от счетчика процессора RDTSC. Это монотонно возрастающее число. Не допускает значения NULL.
ms_ticksbigintУказывает число миллисекунд, прошедших со времени запуска компьютера. Не допускает значения NULL.
cpu_countintУказывает количество логических процессоров в системе. Не допускает значения NULL.
hyperthread_ratiointУказывает количество логических или физических ядер, соответствующих одному физическому пакету процессора. Не допускает значения NULL.
physical_memory_in_bytesbigint**Область применения: SQL Server 2008 через SQL Server 2008 R2 **.

Указывает общий объем физической памяти компьютера. Не допускает значения NULL.
physical_memory_kbbigint**Область применения: SQL Server 2012 через SQL Server 2016 **.

Указывает общий объем физической памяти компьютера. Не допускает значения NULL.
virtual_memory_in_bytesbigint**Область применения: SQL Server 2008 через SQL Server 2008 R2 **.

Объем виртуальной памяти, доступной процессу в пользовательском режиме. Это значение можно использовать для определения того, был ли SQL Server запущен с параметром 3-GB.
virtual_memory_kbbigint**Область применения: SQL Server 2012 через SQL Server 2016 **.

Указывает общий объем виртуального адресного пространства, доступного процессу в пользовательском режиме. Не допускает значения NULL.
bpool_commitedint**Область применения: SQL Server 2008 через SQL Server 2008 R2 **.

Представляет фиксированную физическую память в килобайтах (КБ) в диспетчере памяти. Не включает зарезервированную память в диспетчере памяти. Не допускает значения NULL.
committed_kbint**Область применения: SQL Server 2012 через SQL Server 2016 **.

Представляет фиксированную физическую память в килобайтах (КБ) в диспетчере памяти. Не включает зарезервированную память в диспетчере памяти. Не допускает значения NULL.
bpool_commit_targetint**Область применения: SQL Server 2008 через SQL Server 2008 R2 **.

Представляет объем памяти, в килобайтах (КБ), доступный диспетчеру памяти SQL Server.
committed_target_kbint**Область применения: SQL Server 2012 через SQL Server 2016 **.

Представляет объем памяти, в килобайтах (КБ), доступный диспетчеру памяти SQL Server. Целевой объем вычисляется с помощью разнообразных входных данных, в том числе:

-Текущее состояние системы, включая ее загруженность

-запрошенной текущими процессами памяти

-объем памяти, установленной на компьютере

-параметры конфигурации

Если committed_target_kb больше, чем committed_kb, диспетчер памяти попытается получить дополнительную память. Если committed_target_kb меньше, чем committed_kb, диспетчер памяти попытается уменьшить объем выделенной памяти. Committed_target_kb всегда включает заимствованную и зарезервированную память. Не допускает значения NULL.
bpool_visibleint**Область применения: SQL Server 2008 через SQL Server 2008 R2 **.

Количество буферов по 8 KБ в буферном пуле, которые непосредственно доступны в виртуальном адресном пространстве процесса. Если расширения AWE не используются, то при получении буферным пулом целевого объема памяти (bpool_committed = bpool_commit_target) значение bpool_visible становится равным значению bpool_committed. Если расширения AWE используются на 32-разрядной версии SQL Server, bpool_visible представляет размер отображаемой сопоставленной памяти AWE, которая используется для доступа к физической памяти, выделенной под буферный пул. Размер отображаемой сопоставленной памяти привязан к адресному пространству процесса, поэтому видимый объем памяти будет меньше, чем фиксированный объем, и в дальнейшем может быть уменьшен внутренними компонентами, которые потребляют память для целей, не связанных со страницами базы данных. Если значение bpool_visible слишком маленькое, есть вероятность получения ошибок нехватки памяти.
visible_target_kbint**Область применения: SQL Server 2012 через SQL Server 2016 **.

Совпадает committed_target_kb. Не допускает значения NULL.
stack_size_in_bytesintУказывает размер стека вызова для каждого потока, созданного SQL Server. Не допускает значения NULL.
os_quantumbigintПредставляет такт времени для задач без вытеснения, выраженный в миллисекундах. Квант времени (в секундах) = os_quantum / тактовая частота ЦП. Не допускает значения NULL.
os_error_modeintЗадает режим ошибки для процесса SQL Server. Не допускает значения NULL.
os_priority_classintУказывает класс приоритета для процесса SQL Server. Допускает значение NULL.

32 = нормальный (журнал ошибок будет выдавать сообщение, что SQL Server начинает выполняться с обычной базой приоритетов (=&7;)).

128 = высокий (журнал ошибок будет выдавать сообщение, что SQL Server выполняется с высокой базой приоритетов (=13)).

Дополнительные сведения см. в статье Configure the priority boost Server Configuration Option.
max_workers_countintПредставляет максимальное число исполнителей, которые могут быть созданы. Не допускает значения NULL.
scheduler_countintПредставляет число пользовательских планировщиков, настроенных при выполнении процесса SQL Server. Не допускает значения NULL.
scheduler_total_countintПредставляет общее число планировщиков в SQL Server. Не допускает значения NULL.
deadlock_monitor_serial_numberintУказывает идентификатор текущей последовательности монитора взаимоблокировок. Не допускает значения NULL.
sqlserver_start_time_ms_ticksbigintПредставляет ms_tick номер при SQL Server последнего запуска. Сравнивается с текущим столбцом ms_ticks. Не допускает значения NULL.
sqlserver_start_timeдаты и времениУказывает дату и время последнего запуска SQL Server. Не допускает значения NULL.
affinity_typeint**Область применения: SQL Server 2008 R2 ** через SQL Server 2016.

Задает текущий используемый тип привязки процесса к процессорам. Не допускает значения NULL. Дополнительные сведения см. в разделе ALTER SERVER CONFIGURATION (Transact-SQL).

1 = MANUAL

2 = AUTO
affinity_type_descvarchar(60)**Область применения: SQL Server 2008 R2 через SQL Server 2016 **.

Описывает affinity_type столбца. Не допускает значения NULL.

MANUAL = сходство было задано хотя бы для одного ЦП.

AUTO = SQL Server может свободно перемещать потоки между процессорами.
process_kernel_time_msbigintОбласть применения: SQL Server 2008 R2 через [! ВКЛЮЧИТЬ [ssCurrent](.. /Token/ssCurrent_md.MD)].

Общее время в миллисекундах, затраченное всеми потоками SQL Server в режиме ядра. Это значение может быть больше, чем время одного процессора, поскольку оно включает в себя время всех процессоров сервера. Не допускает значения NULL.
process_user_time_msbigint**Область применения: SQL Server 2008 R2 через SQL Server 2016 **.

Общее время в миллисекундах, затраченное всеми потоками SQL Server в пользовательском режиме. Это значение может быть больше, чем время одного процессора, поскольку оно включает в себя время всех процессоров сервера. Не допускает значения NULL.
time_sourceint**Область применения: SQL Server 2008 R2 через SQL Server 2016 **.

Указывает API-интерфейс, который службы SQL Server используют для извлечения реального времени. Не допускает значения NULL.

0 = QUERY_PERFORMANCE_COUNTER

1 = MULTIMEDIA_TIMER
time_source_descnvarchar(60)**Область применения: SQL Server 2008 R2 через SQL Server 2016 **.

Описывает time_source столбца. Не допускает значения NULL.

QUERY_PERFORMANCE_COUNTER = QueryPerformanceCounter API извлекает реальное время.

MULTIMEDIA_TIMER = мультимедийного таймера API, который извлекает реальное время.
virtual_machine_typeint**Область применения: SQL Server 2008 R2 через SQL Server 2016 **.

Указывает, выполняется ли SQL Server в виртуальной среде. Не допускает значения NULL.

0 = нет

1 = HYPERVISOR

2 = OTHER
virtual_machine_type_descnvarchar(60)**Область применения: SQL Server 2008 R2 через SQL Server 2016 **.

Описывает virtual_machine_type столбца. Не допускает значения NULL.

NONE = SQL Server не работает на виртуальной машине.

HYPERVISOR = SQL Server выполняется внутри гипервизора, который подразумевает виртуализацию с поддержкой аппаратного обеспечения. При установке роли Hyper_V низкоуровневая оболочка размещает операционную систему, чтобы экземпляр, запущенный на ОС узла, выполнялся в этой оболочке.

OTHER = SQL Server выполняется на виртуальной машине, не использующей поддержку оборудования, например Microsoft Virtual PC.
softnuma_configurationint**Область применения: SQL Server 2016 через SQL Server 2016 **.

Указывает, что узлы NUMA образом настроены. Не допускает значения NULL.

0 = OFF указывает оборудования по умолчанию

1 = автоматическое программной архитектуры NUMA

2 = вручную программной архитектуры NUMA через реестр
softnuma_configuration_descnvarchar(60)**Область применения: SQL Server 2016 через SQL Server 2016 **.

OFF = программной архитектуры NUMA функция — OFF

ВКЛЮЧЕН = SQL Server автоматически определяет размер узла NUMA для программной архитектуры NUMA

MANUAL = настроен вручную программной архитектуры NUMA
process_physical_affinitynvarchar(3072)**Область применения: начиная с SQL Server vNext **.

Сведения о еще в будущем.
sql_memory_modelintОбласть применения: запуск SQL Server 2016 SP1.

Задает модель памяти, используемый сервером SQL Server для выделения памяти. Не допускает значения NULL.

1 = модель обычной памяти
2 = блокировка страниц в памяти
3 = больших страниц в памяти
sql_memory_model_descnvarchar(120)Область применения: запуск SQL Server 2016 SP1.

Задает модель памяти, используемый сервером SQL Server для выделения памяти. Не допускает значения NULL.

ОБЫЧНАЯ = SQL Server использует модель обычной памяти для выделения памяти. Это модель памяти sql по умолчанию, если учетная запись службы SQL Server не имеет блокировка страниц в памяти привилегии во время запуска.
LOCK_PAGES = SQL server используется блокировка страниц в памяти для выделения памяти. Это диспетчер памяти sql по умолчанию, если учетная запись службы SQL Server необходима блокировка страниц в памяти во время запуска SQL Server.
 LARGE_PAGES = SQL Server использует больших страниц в памяти для выделения памяти. SQL Server использует распределителя больших страниц для выделения памяти только в выпуске Enterprise edition, когда учетная запись службы SQL Server необходима блокировка страниц в памяти при запуске сервера, и при включении 834 флаг трассировки.
pdw_node_idintОбласть применения: Хранилище данных SQL Azure,Параллельное хранилище данных

Идентификатор узла, который это распределение.

На SQL Server требуется VIEW SERVER STATE разрешение на сервере.

На База данных SQL уровней Premium необходимо VIEW DATABASE STATE разрешений в базе данных. На База данных SQL уровней Standard и Basic требуется База данных SQL учетная запись администратора.

Динамические административные представления и функции (Transact-SQL)
Динамические административные представления (Transact-SQL) относящиеся к операционной системе SQL Server