sys.dm_os_sys_info (Transact-SQL)
Aplica-se a: SQL Server Banco de Dados SQL do Azure Instância Gerenciada de SQL do Azure PDW (Sistema de Plataforma de Análise) do Azure Synapse Analytics
Retorna um conjunto variado de informações úteis sobre o computador e sobre os recursos disponíveis e consumidos pelo SQL Server.
Observação
Para chamar isso do Azure Synapse Analytics ou do PDW (Analytics Platform System), use o nome sys.dm_pdw_nodes_os_sys_info
. Não há suporte a essa sintaxe para o pool de SQL sem servidor no Azure Synapse Analytics.
Nome da coluna | Tipo de dados | Descrição e notas específicas da versão |
---|---|---|
cpu_ticks |
bigint | Especifica a contagem de verificação de CPU atual. Os tiques da CPU são obtidos do contador RDTSC do processador. É um número monotonicamente crescente. Não permite valor nulo. |
ms_ticks |
bigint | Especifica o número de milissegundos desde que o computador foi iniciado. Não permite valor nulo. |
cpu_count |
int | Especifica o número de CPUs lógicas no sistema. Não permite valor nulo. No Banco de Dados SQL do Azure, essa coluna pode retornar o número de CPUs lógicas no computador que hospeda o banco de dados ou o pool elástico. Para determinar o número de CPUs lógicas disponíveis para o banco de dados ou pool elástico, use a cpu_limit coluna em sys.dm_user_db_resource_governance. |
hyperthread_ratio |
int | Especifica a taxa do número de cores lógicas ou físicas que são expostas por um pacote de processador físico. Não permite valor nulo. |
physical_memory_in_bytes |
bigint | Aplica-se a: SQL Server 2008 (10.0.x) e SQL Server 2008 R2 (10.50.x). Especifica a quantidade total de memória física no computador. Não permite valor nulo. |
physical_memory_kb |
bigint | Aplica-se a: SQL Server 2012 (11.x) e versões posteriores. Especifica a quantidade total de memória física no computador. Não permite valor nulo. No Banco de Dados SQL do Azure, essa coluna retorna a quantidade total de memória física no computador que hospeda o banco de dados ou o pool elástico. Para determinar a quantidade de memória física disponível para o banco de dados ou pool elástico, use a process_memory_limit_mb coluna em sys.dm_os_job_object. |
virtual_memory_in_bytes |
bigint | Aplica-se a: SQL Server 2008 (10.0.x) e SQL Server 2008 R2 (10.50.x). Quantidade de memória virtual disponível ao processo em modo de usuário. Esse valor pode ser usado para determinar se o SQL Server foi iniciado usando uma opção de 3 GB. |
virtual_memory_kb |
bigint | Aplica-se a: SQL Server 2012 (11.x) e versões posteriores. Especifica a quantidade de espaço de endereço virtual disponível ao processo em modo de usuário. Não permite valor nulo. |
bpool_committed |
int | Aplica-se a: SQL Server 2008 (10.0.x) e SQL Server 2008 R2 (10.50.x). Representa a memória confirmada em KB (quilobytes) no gerenciador de memória. Não inclui memória reservada no gerenciador de memória. Não permite valor nulo. |
committed_kb |
bigint | Aplica-se a: SQL Server 2012 (11.x) e versões posteriores. Representa a memória confirmada em KB (quilobytes) no gerenciador de memória. Não inclui memória reservada no gerenciador de memória. Não permite valor nulo. |
bpool_commit_target |
int | Aplica-se a: SQL Server 2008 (10.0.x) e SQL Server 2008 R2 (10.50.x). Representa a quantidade de memória, em KB (quilobytes), que pode ser consumida pelo gerenciador de memória do SQL Server. |
committed_target_kb |
bigint | Aplica-se a: SQL Server 2012 (11.x) e versões posteriores. Representa a quantidade de memória, em KB (quilobytes), que pode ser consumida pelo gerenciador de memória do SQL Server. O valor alvo é calculado usando várias entradas, como: - o estado atual do sistema, incluindo sua carga - a memória solicitada pelos processos atuais - a quantidade de memória instalada no computador - Parâmetros de configuração Se committed_target_kb for maior que committed_kb , o gerenciador de memória tentará obter mais memória. Se committed_target_kb for menor que committed_kb , o gerenciador de memória tentará reduzir a quantidade de memória confirmada. O committed_target_kb sempre inclui memória roubada e reservada. Não permite valor nulo. |
bpool_visible |
int | Aplica-se a: SQL Server 2008 (10.0.x) e SQL Server 2008 R2 (10.50.x). Número de buffers de 8 KB no pool de buffers que é diretamente acessível no espaço do endereço virtual do processo. Quando não estiver usando as Extensões de Janela de Endereço (AWE), quando o buffer pool obtém seu destino de memória ( bpool_committed = bpool_commit_target ), o valor de bpool_visible é igual ao valor de bpool_committed . Ao usar o AWE em uma versão de 32 bits do SQL Server, bpool_visible representa o tamanho da janela de mapeamento AWE usada para acessar a memória física alocada pelo pool de buffers. O tamanho dessa janela de mapeamento é limitado pelo espaço de endereço do processo e, portanto, a quantidade visível é menor que a quantidade confirmada. Esse valor pode ser reduzido ainda mais por componentes internos que consomem memória, para outros fins que não sejam páginas de banco de dados. Se o valor de bpool_visible for muito baixo, você poderá receber erros de memória insuficiente. |
visible_target_kb |
bigint | Aplica-se a: SQL Server 2012 (11.x) e versões posteriores. É o mesmo que committed_target_kb . Não permite valor nulo. |
stack_size_in_bytes |
int | Especifica o tamanho da pilha de chamadas para cada thread criado pelo SQL Server. Não permite valor nulo. |
os_quantum |
bigint | Representa o Quantum para uma tarefa não preemptiva, medido em milissegundos. Quantum (em segundos) = os_quantum / velocidade do clock da CPU. Não permite valor nulo. |
os_error_mode |
int | Especifica o modo de erro para o processo do SQL Server. Não permite valor nulo. |
os_priority_class |
int | Especifica a classe de prioridade para o processo do SQL Server. Anulável.32 = Normal. O log de erros diz que o SQL Server está iniciando na base de prioridade normal (7 ).128 = Alto. O log de erros diz que o SQL Server está sendo executado na base de alta prioridade (13 ).Para obter mais informações, consulte Configurar o aumento de prioridade (opção de configuração do servidor). |
max_workers_count |
int | Representa o número máximo de operadores que podem ser criados. Não permite valor nulo. |
scheduler_count |
int | Representa o número de agendadores de usuário configurados no processo do SQL Server. Não permite valor nulo. |
scheduler_total_count |
int | Representa o número total de agendadores no SQL Server. Não permite valor nulo. |
deadlock_monitor_serial_number |
int | Especifica a ID da sequência do monitor de deadlock atual. Não permite valor nulo. |
sqlserver_start_time_ms_ticks |
bigint | Representa o número quando o ms_tick SQL Server foi iniciado pela última vez. Compare com a coluna atual ms_ticks . Não permite valor nulo. |
sqlserver_start_time |
datetime | Especifica a data e a hora do sistema local em que o SQL Server foi iniciado pela última vez. Não permite valor nulo. As informações em muitas outras DMVs do SQL Server incluem apenas a atividade desde a última inicialização do mecanismo de banco de dados. Use esta coluna para localizar a última hora de inicialização do Mecanismo de Banco de Dados do SQL Server. |
affinity_type |
int | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Especifica o tipo de afinidade do processo da CPU do servidor em uso atualmente. Não permite valor nulo. Para obter mais informações, consulte ALTER SERVER CONFIGURATION (Transact-SQL). 1 = MANUAL 2 = AUTO |
affinity_type_desc |
nvarchar(60) | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Descreve a affinity_type coluna. Não permite valor nulo.MANUAL = affinity foi definido para pelo menos uma CPU.AUTO = SQL Server pode mover threads livremente entre CPUs. |
process_kernel_time_ms |
bigint | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Tempo total em milissegundos gasto por todos os threads do SQL Server no modo kernel. Esse valor pode ser maior que um único relógio de processador porque inclui o tempo de todos os processadores no servidor. Não permite valor nulo. |
process_user_time_ms |
bigint | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Tempo total em milissegundos gasto por todos os threads do SQL Server no modo de usuário. Esse valor pode ser maior que um único relógio de processador porque inclui o tempo de todos os processadores no servidor. Não permite valor nulo. |
time_source |
int | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Indica a API que o SQL Server está usando para recuperar a hora do relógio de parede. Não permite valor nulo. 0 = QUERY_PERFORMANCE_COUNTER 1 = MULTIMEDIA_TIMER |
time_source_desc |
nvarchar(60) | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Descreve a time_source coluna. Não permite valor nulo.QUERY_PERFORMANCE_COUNTER = a API QueryPerformanceCounter recupera a hora do relógio de parede.MULTIMEDIA_TIMER = A API do temporizador multimídia que recupera a hora do relógio de parede. |
virtual_machine_type |
int | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Indica se o SQL Server está sendo executado em um ambiente virtualizado. Não permite valor nulo. 0 = NONE 1 = HYPERVISOR 2 = OTHER |
virtual_machine_type_desc |
nvarchar(60) | Aplica-se a: SQL Server 2008 R2 (10.50.x) e versões posteriores. Descreve a virtual_machine_type coluna. Não permite valor nulo.NONE = SQL Server não está em execução dentro de uma máquina virtual.HYPERVISOR = SQL Server está sendo executado dentro de uma máquina virtual hospedada por um sistema operacional que executa o hipervisor (um sistema operacional host que emprega virtualização assistida por hardware).OTHER = SQL Server está sendo executado dentro de uma máquina virtual hospedada por um sistema operacional que não emprega assistente de hardware, como o Microsoft Virtual PC. |
softnuma_configuration |
int | Aplica-se a: SQL Server 2016 (13.x) e versões posteriores. Especifica a maneira como os nós NUMA são configurados. Não permite valor nulo. 0 = OFF indica padrão de hardware1 = Soft-NUMA automatizado2 = Manual soft-NUMA via registro |
softnuma_configuration_desc |
nvarchar(60) | Aplica-se a: SQL Server 2016 (13.x) e versões posteriores.OFF = O recurso Soft-NUMA está desativadoON = SQL Server determina automaticamente os tamanhos de nó NUMA para Soft-NUMAMANUAL = Software NUMA configurado manualmente |
process_physical_affinity |
Nvarchar(3072) | Aplica-se a: a partir do SQL Server 2017 (14.x). Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida. |
sql_memory_model |
int | Aplica-se a: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 e versões posteriores. Especifica o modelo de memória usado pelo SQL Server para alocar memória. Não permite valor nulo. 1 = Modelo de memória convencional2 = Bloquear páginas na memória3 = Páginas grandes na memória |
sql_memory_model_desc |
nvarchar(60) | Aplica-se a: SQL Server 2012 (11.x) SP4, SQL Server 2016 (13.x) SP1 e versões posteriores. Especifica o modelo de memória usado pelo SQL Server para alocar memória. Não permite valor nulo. CONVENTIONAL = SQL Server está usando o modelo de memória convencional para alocar memória. Esse é o modelo de memória padrão do Mecanismo de Banco de Dados quando a conta de serviço do SQL Server não tem privilégios de Bloquear Páginas na Memória durante a inicialização.LOCK_PAGES = SQL Server está usando Bloquear Páginas na Memória para alocar memória. Esse é o gerenciador de memória padrão do Mecanismo de Banco de Dados quando a conta de serviço do SQL Server tem o privilégio "Bloquear páginas na memória" durante a inicialização do SQL Server.LARGE_PAGES = SQL Server está usando Páginas Grandes na Memória para alocar memória. O SQL Server usa o alocador de Páginas Grandes para alocar memória somente com a edição Enterprise quando a conta de serviço do SQL Server tem o privilégio "Bloquear páginas na memória" durante a inicialização do servidor e quando o sinalizador de rastreamento 834 está ativado. |
pdw_node_id |
int | Aplica-se a: Azure Synapse Analytics, Analytics Platform System (PDW) O identificador do nó em que essa distribuição está ativada. |
socket_count |
int | Aplica-se a: SQL Server 2016 (13.x) SP2 e versões posteriores. Especifica o número de soquetes de processador disponíveis no sistema. |
cores_per_socket |
int | Aplica-se a: SQL Server 2016 (13.x) SP2 e versões posteriores. Especifica o número de processadores por soquete disponíveis no sistema. |
numa_node_count |
int | Aplica-se a: SQL Server 2016 (13.x) SP2 e versões posteriores. Especifica o número de nós NUMA disponíveis no sistema. Esta coluna inclui nós NUMA físicos e nós NUMA flexíveis. |
container_type |
int | Aplica-se a: SQL Server 2017 (14.x) e versões posteriores. Especifica o tipo de contêiner em que o SQL Server está sendo executado. Não permite valor nulo. 0 (padrão) = NONE 1 = LINUX CONTAINER 2 = WINDOWS SERVER CONTAINER 3 = HYPER-V CONTAINER |
container_type_desc |
nvarchar(60) | Aplica-se a: SQL Server 2017 (14.x) e versões posteriores. Descreve a container_type coluna. Não permite valor nulo.NONE = SQL Server não está em execução em um contêiner.LINUX CONTAINER = SQL Server está em execução em um contêiner do Linux.WINDOWS SERVER CONTAINER = SQL Server está em execução em um contêiner do Windows Server.HYPER-V CONTAINER = SQL Server está em execução em um contêiner Hyper-V. |
Permissões
No SQL Server 2019 (15.x) e versões anteriores e na Instância Gerenciada de SQL, você precisa de VIEW SERVER STATE
permissão.
No SQL Server 2022 (16.x) e versões posteriores, você precisa de permissão VIEW SERVER PERFORMANCE STATE
no servidor.
Nos objetivos de serviço Básico, S0 e S1 do Banco de Dados SQL do Azure e para bancos de dados em pools elásticos, a conta de administrador do servidor, a conta de administrador do Microsoft Entra ou a associação na função de ##MS_ServerStateReader##
servidor é necessária. Em todos os outros objetivos de serviço do Banco de Dados SQL, a permissão VIEW DATABASE STATE
no banco de dados ou a associação à função de servidor ##MS_ServerStateReader##
são necessárias.