sys.dm_os_sys_info (Transact-SQL)

Применимо к: даSQL Server (все поддерживаемые версии) ДаБаза данных SQL Azure ДаУправляемый экземпляр SQL Azure даAzure Synapse Analytics даПараллельное хранилище данных

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

Примечание

Чтобы вызвать это из Azure Synapse Analytics или Система платформы аналитики (PDW) , используйте имя sys.dm_pdw_nodes_os_sys_info . Этот синтаксис не поддерживается бессерверным пулом SQL в Azure Synapse Analytics.

Имя столбца Тип данных Примечания и описание для конкретной версии
cpu_ticks bigint Задает текущий счетчик тактов времени ЦП. Метки времени ЦП поступают от счетчика процессора RDTSC. Это монотонно возрастающее число. Не допускает значения NULL.
ms_ticks bigint Указывает число миллисекунд, прошедших со времени запуска компьютера. Не допускает значения NULL.
cpu_count int Указывает количество логических процессоров в системе. Не допускает значения NULL.
hyperthread_ratio int Указывает количество логических или физических ядер, соответствующих одному физическому пакету процессора. Не допускает значения NULL.
physical_memory_in_bytes bigint Применимо к: SQL Server 2008 с помощью SQL Server 2008 R2 .

Указывает общий объем физической памяти компьютера. Не допускает значения NULL.
physical_memory_kb bigint Применимо к: SQL Server 2012 (11.x) и выше.

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

Объем виртуальной памяти, доступной процессу в пользовательском режиме. Это значение можно использовать для определения того, был ли SQL Server запущен с параметром 3-GB.
virtual_memory_kb bigint Применимо к: SQL Server 2012 (11.x) и выше.

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

Представляет фиксированную физическую память в килобайтах (КБ) в диспетчере памяти. Не включает зарезервированную память в диспетчере памяти. Не допускает значения NULL.
committed_kb int Применимо к: SQL Server 2012 (11.x) и выше.

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

Представляет объем памяти, в килобайтах (КБ), доступный диспетчеру памяти SQL Server.
committed_target_kb int Применимо к: SQL Server 2012 (11.x) и выше.

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

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

— память, запрашиваемая текущими процессами

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

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

Если committed_target_kb значение больше committed_kb , диспетчер памяти попытается получить дополнительную память. Если меньше committed_target_kb committed_kb , то диспетчер памяти попытается сжать зафиксированный объем памяти. committed_target_kbВсегда включает украденную и зарезервированную память. Не допускает значения NULL.
bpool_visible int Применимо к: 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_kb int Применимо к: SQL Server 2012 (11.x) и выше.

То же самое, что committed_target_kb . Не допускает значения NULL.
stack_size_in_bytes int Указывает размер стека вызова для каждого потока, созданного SQL Server. Не допускает значения NULL.
os_quantum bigint Представляет такт времени для задач без вытеснения, выраженный в миллисекундах. Такт (в секундах) =/тактовая os_quantum Частота ЦП. Не допускает значения NULL.
os_error_mode int Задает режим ошибки для процесса SQL Server. Не допускает значения NULL.
os_priority_class int Указывает класс приоритета для процесса SQL Server. Допускает значение NULL.

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

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

Дополнительные сведения см. в статье Настройка параметра конфигурации сервера priority boost.
max_workers_count int Представляет максимальное число исполнителей, которые могут быть созданы. Не допускает значения NULL.
scheduler_count int Представляет число пользовательских планировщиков, настроенных при выполнении процесса SQL Server. Не допускает значения NULL.
scheduler_total_count int Представляет общее число планировщиков в SQL Server. Не допускает значения NULL.
deadlock_monitor_serial_number int Указывает идентификатор текущей последовательности монитора взаимоблокировок. Не допускает значения NULL.
sqlserver_start_time_ms_ticks bigint Представляет ms_tick номер при SQL Server последнем запуске. Сравнить с текущим ms_ticks столбцом. Не допускает значения NULL.
sqlserver_start_time datetime Указывает дату и время SQL Server последнего запуска локальной системы. Не допускает значения NULL.
Сведения во многих других SQL Server DMV включают только действия с момента последнего запуска ядра СУБД. Используйте этот столбец для поиска времени последнего Компонент SQL Server Database Engine запуска.
affinity_type int Применимо к: SQL Server 2008 R2 и выше.

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

1 = MANUAL

2 = AUTO
affinity_type_desc varchar(60) Применимо к: SQL Server 2008 R2 и выше.

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

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

AUTO = SQL Server может свободно перемещать потоки между процессорами.
process_kernel_time_ms bigint Применимо к: SQL Server 2008 R2 и выше.

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

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

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

0 = QUERY_PERFORMANCE_COUNTER

1 = MULTIMEDIA_TIMER
time_source_desc nvarchar(60) Применимо к: SQL Server 2008 R2 и выше.

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

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

MULTIMEDIA_TIMER = API таймера мультимедиа , который получает время стены.
virtual_machine_type int Применимо к: SQL Server 2008 R2 и выше.

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

0 = нет

1 = HYPERVISOR

2 = OTHER
virtual_machine_type_desc nvarchar(60) Применимо к: SQL Server 2008 R2 и выше.

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

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

ГИПЕРВИЗОР = SQL Server работает внутри виртуальной машины, размещенной под управлением низкоуровневой оболочки (ОС узла, использующей аппаратную виртуализацию).

OTHER = SQL Server работает внутри виртуальной машины, размещенной в ОС, которая не использует помощник по оборудованию, например Microsoft Virtual PC.
softnuma_configuration int Применимо к: SQL Server 2016 (13.x); и выше.

Задает способ настройки узлов NUMA. Не допускает значения NULL.

0 = ВЫКЛЮЧЕНо указывает оборудование по умолчанию

1 = Автоматизированная программная архитектура NUMA

2 = ручная программная NUMA с помощью реестра
softnuma_configuration_desc nvarchar(60) Применимо к: SQL Server 2016 (13.x); и выше.

OFF = функция Soft-NUMA ОТКЛЮЧЕНа

ON = SQL Server автоматически определяет размеры узлов NUMA для программной архитектуры NUMA

ВРУЧНУЮ = программная архитектура NUMA настроена вручную
process_physical_affinity nvarchar (3072) Применимо к: Начиная с SQL Server 2017 (14.x); .

Информация, которую еще нужно получить.
sql_memory_model int Применимо к: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x); SP1 и более поздние версии.

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

1 = Стандартная модель памяти
2 = Блокировка страниц в памяти
3 = большие страницы в памяти;
sql_memory_model_desc nvarchar(120) Применимо к: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x); 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_id int Применимо к: Azure Synapse Analytics , Система платформы аналитики (PDW)

Идентификатор узла, на котором находится данное распределение.
socket_count int Применимо к: SQL Server 2016 (13.x); с пакетом обновления 2 (SP2) и выше.

Указывает число разъемов процессора, доступных в системе.
cores_per_socket int Применимо к: SQL Server 2016 (13.x); с пакетом обновления 2 (SP2) и выше.

Указывает число процессоров на каждый сокет, доступный в системе.
numa_node_count int Применимо к: SQL Server 2016 (13.x); с пакетом обновления 2 (SP2) и выше.

Указывает количество узлов NUMA, доступных в системе. В этом столбце содержатся физические узлы NUMA, а также мягкие узлы NUMA.

Разрешения

В SQL Server и SQL управляемый экземпляр требуется VIEW SERVER STATE разрешение.
В базах данных SQL Basic, S0 и S1 , а также для баз данных в эластичных пулах требуется учетная запись администратора сервера или учетная запись администратора Azure Active Directory . Для всех остальных целей службы базы данных SQL VIEW DATABASE STATE разрешение требуется в базе данных.

См. также

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