sys.dm_os_sys_info (Transact-SQL)
Применимо: SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure azure Synapse Analytics Analytics Platform System (PDW)
Возвращает дополнительный набор полезных сведений о компьютере и о ресурсах, доступных и используемых SQL Server.
Примечание.
Чтобы вызвать это из Azure Synapse Analytics или Analytics Platform System (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. В База данных SQL Azure этот столбец может вернуть количество логических ЦП на компьютере, на котором размещена база данных или эластичные пулы. Чтобы определить количество логических ЦП, доступных для базы данных или эластичного пула, используйте cpu_limit столбец в sys.dm_user_db_resource_governance. |
hyperthread_ratio |
int | Указывает количество логических или физических ядер, соответствующих одному физическому пакету процессора. Не допускает значения NULL. |
physical_memory_in_bytes |
bigint | Применимо: SQL Server 2008 (10.0.x) и SQL Server 2008 R2 (10.50.x). Указывает общий объем физической памяти компьютера. Не допускает значения NULL. |
physical_memory_kb |
bigint | Применимо: SQL Server 2012 (11.x) и более поздних версий. Указывает общий объем физической памяти компьютера. Не допускает значения NULL. В База данных SQL Azure этот столбец возвращает общий объем физической памяти на компьютере с базой данных или эластичным пулом. Чтобы определить объем физической памяти, доступной для базы данных или эластичного пула, используйте process_memory_limit_mb столбец в sys.dm_os_job_object. |
virtual_memory_in_bytes |
bigint | Применимо: SQL Server 2008 (10.0.x) и SQL Server 2008 R2 (10.50.x). Объем виртуальной памяти, доступной процессу в пользовательском режиме. Это значение можно использовать для определения того, был ли запущен SQL Server с помощью 3 ГБ коммутатора. |
virtual_memory_kb |
bigint | Применимо: SQL Server 2012 (11.x) и более поздних версий. Указывает общий объем виртуального адресного пространства, доступного процессу в пользовательском режиме. Не допускает значения NULL. |
bpool_committed |
int | Применимо: SQL Server 2008 (10.0.x) и SQL Server 2008 R2 (10.50.x). Представляет фиксированную физическую память в килобайтах (КБ) в диспетчере памяти. Не включает зарезервированную память в диспетчер памяти. Не допускает значения NULL. |
committed_kb |
bigint | Применимо: SQL Server 2012 (11.x) и более поздних версий. Представляет фиксированную физическую память в килобайтах (КБ) в диспетчере памяти. Не включает зарезервированную память в диспетчер памяти. Не допускает значения NULL. |
bpool_commit_target |
int | Применимо: SQL Server 2008 (10.0.x) и SQL Server 2008 R2 (10.50.x). Представляет объем памяти, в килобайтах (КБ), доступный диспетчеру памяти SQL Server. |
committed_target_kb |
bigint | Применимо: 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 (10.0.x) и SQL Server 2008 R2 (10.50.x). Количество буферов по 8 KБ в буферном пуле, которые непосредственно доступны в виртуальном адресном пространстве процесса. Если не использовать расширения окна адресов (AWE), когда пул буферов получает целевой объект памяти ( bpool_committed = bpool_commit_target ), значение bpool_visible равно значению bpool_committed . При использовании AWE в 32-разрядной версии SQL Server представляет размер окна сопоставления AWE, bpool_visible используемого для доступа к физической памяти, выделенной буферным пулом. Размер этого окна сопоставления связан адресным пространством процесса, поэтому видимый объем меньше, чем зафиксированная сумма. Это значение может быть дополнительно сокращено внутренними компонентами, потребляющими память, в целях, отличных от страниц базы данных. Если значение bpool_visible слишком низко, может возникнуть ошибка памяти. |
visible_target_kb |
bigint | Применимо: SQL Server 2012 (11.x) и более поздних версий. То же самое, что committed_target_kb и . Не допускает значения NULL. |
stack_size_in_bytes |
int | Задает размер стека вызовов для каждого потока, созданного SQL Server. Не допускает значения NULL. |
os_quantum |
bigint | Представляет такт времени для задач без вытеснения, выраженный в миллисекундах. Quantum (в секундах) = 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 ).Дополнительные сведения см. в разделе "Настройка приоритета" (параметр конфигурации сервера). |
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 включает только действия с момента запуска последнего ядра СУБД. Используйте этот столбец, чтобы найти последнее время запуска SQL Server ядро СУБД. |
affinity_type |
int | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Задает текущий используемый тип привязки процесса к процессорам. Не допускает значения NULL. Дополнительные сведения см. в разделе ALTER SERVER CONFIGURATION (Transact-SQL). 1 = MANUAL 2 = AUTO |
affinity_type_desc |
nvarchar(60) | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Описывает affinity_type столбец. Не допускает значения NULL.MANUAL = сходство было задано по крайней мере для одного ЦП.AUTO = SQL Server может свободно перемещать потоки между ЦП. |
process_kernel_time_ms |
bigint | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Общее время в миллисекундах, затраченное всеми потоками SQL Server в режиме ядра. Это значение может быть больше, чем время одного процессора, поскольку оно включает в себя время всех процессоров сервера. Не допускает значения NULL. |
process_user_time_ms |
bigint | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Общее время в миллисекундах, затраченное всеми потоками SQL Server в пользовательском режиме. Это значение может быть больше, чем время одного процессора, поскольку оно включает в себя время всех процессоров сервера. Не допускает значения NULL. |
time_source |
int | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Указывает API, с помощью которого SQL Server используется для получения времени на стены. Не допускает значения NULL. 0 = QUERY_PERFORMANCE_COUNTER 1 = MULTIMEDIA_TIMER |
time_source_desc |
nvarchar(60) | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Описывает time_source столбец. Не допускает значения NULL.QUERY_PERFORMANCE_COUNTER = API QueryPerformanceCounter извлекает время на часах.MULTIMEDIA_TIMER = API мультимедийного таймера , который получает время настенных часов. |
virtual_machine_type |
int | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Указывает, работает ли SQL Server в виртуализированной среде. Не допускает значения NULL. 0 = NONE 1 = HYPERVISOR 2 = OTHER |
virtual_machine_type_desc |
nvarchar(60) | Область применения: SQL Server 2008 R2 (10.50.x) и более поздних версий. Описывает virtual_machine_type столбец. Не допускает значения NULL.NONE = SQL Server не выполняется внутри виртуальной машины.HYPERVISOR = SQL Server выполняется внутри виртуальной машины, размещенной под управлением ос под управлением гипервизора (ос узла, использующей аппаратное виртуализацию).OTHER = SQL Server выполняется внутри виртуальной машины, размещенной операционной системой, которая не использует аппаратный помощник, например Microsoft Virtual PC. |
softnuma_configuration |
int | Область применения: SQL Server 2016 (13.x) и более поздних версий. Указывает способ настройки узлов NUMA. Не допускает значения NULL. 0 = OFF указывает, что оборудование по умолчанию1 = автоматизированное soft-NUMA2 = вручную soft-NUMA через реестр |
softnuma_configuration_desc |
nvarchar(60) | Область применения: SQL Server 2016 (13.x) и более поздних версий.OFF = функция Soft-NUMA отключенаON = SQL Server автоматически определяет размеры узлов NUMA для Soft-NUMAMANUAL = вручную настроено soft-NUMA |
process_physical_affinity |
nvarchar(3072) | Область применения: начиная с SQL Server 2017 (14.x). Указано только в ознакомительных целях. Не поддерживается. Совместимость с будущими версиями не гарантируется. |
sql_memory_model |
int | Область применения: SQL Server 2012 (11.x) с пакетом обновления 4 (SP4), SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) и более поздних версий. Указывает модель памяти, используемую SQL Server для выделения памяти. Не допускает значения NULL. 1 = обычная модель памяти2 = блокировка страниц в памяти3 = большие страницы в памяти |
sql_memory_model_desc |
nvarchar(60) | Область применения: SQL Server 2012 (11.x) с пакетом обновления 4 (SP4), SQL Server 2016 (13.x) с пакетом обновления 1 (SP1) и более поздних версий. Указывает модель памяти, используемую SQL Server для выделения памяти. Не допускает значения NULL. CONVENTIONAL = SQL Server использует обычную модель памяти для выделения памяти. Это по умолчанию ядро СУБД модель памяти, если у учетной записи службы SQL Server нет привилегий блокировки в памяти во время запуска.LOCK_PAGES = SQL Server использует блокировку страниц в памяти для выделения памяти. Это диспетчер памяти по умолчанию ядро СУБД, если учетная запись службы SQL Server имеет привилегию "Блокировка страниц в памяти" во время запуска SQL Server.LARGE_PAGES = SQL Server использует большие страницы в памяти для выделения памяти. SQL Server использует средство выделения памяти только с корпоративным выпуском, если у учетной записи службы SQL Server есть привилегия "Блокировка страниц в памяти" во время запуска сервера и включение флага трассировки 834. |
pdw_node_id |
int | Область применения: Azure Synapse Analytics, Analytics Platform System (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. |
container_type |
int | Область применения: SQL Server 2017 (14.x) и более поздних версий. Указывает тип контейнера SQL Server, запущенного внутри. Не допускает значения NULL. 0 (по умолчанию) = NONE 1 = LINUX CONTAINER 2 = WINDOWS SERVER CONTAINER 3 = HYPER-V CONTAINER |
container_type_desc |
nvarchar(60) | Область применения: SQL Server 2017 (14.x) и более поздних версий. Описывает container_type столбец. Не допускает значения NULL.NONE = SQL Server не выполняется в контейнере.LINUX CONTAINER = SQL Server выполняется в контейнере Linux.WINDOWS SERVER CONTAINER = SQL Server выполняется в контейнере Windows Server.HYPER-V CONTAINER = SQL Server выполняется в контейнере Hyper-V. |
Разрешения
Для SQL Server 2019 (15.x) и более ранних версий и Управляемый экземпляр SQL требуется VIEW SERVER STATE
разрешение.
В SQL Server 2022 (16.x) и более поздних версиях требуется VIEW SERVER PERFORMANCE STATE
разрешение на сервере.
Для целей службы База данных SQL Azure Basic, S0 и S1, а также для баз данных в эластичных пулах, учетной записи администратора сервера, учетной записи администратора Microsoft Entra или членства в ##MS_ServerStateReader##
роли сервера требуется. Для всех остальных целей обслуживания базы данных SQL требуется разрешение VIEW DATABASE STATE
в базе данных или членство в роли сервера ##MS_ServerStateReader##
.