sys.dm_os_sys_info (Transact-SQL)
返回有关安装 SQL Server 的计算机的信息,包括 SQL Server 的可用资源和它占用的资源。
列名 |
数据类型 |
说明 |
---|---|---|
cpu_ticks |
bigint |
当前 CPU 时钟周期数。CPU 时钟周期数是从处理器的 RDTSC 计数器获得的。它是一个仅增加的数字。 |
ms_ticks |
bigint |
自从计算机启动以来的毫秒数。 |
cpu_count |
int |
系统的逻辑 CPU 数。 |
hyperthread_ratio |
int |
一个物理处理器包公开的逻辑内核数与物理内核数的比。 |
physical_memory_in_bytes |
bigint |
可用物理内存的数量。 |
virtual_memory_in_bytes |
bigint |
对用户模式进程可用的虚拟内存的数量。通过使用 3 GB 开关,可以用它来确定是否 SQL Server 已启动。 |
bpool_committed |
int |
缓冲池中的 8 KB 缓冲区数。此数量表示缓冲池中的已提交物理内存。不包括缓冲池中的保留内存。 |
bpool_commit_target |
int |
缓冲池所需要的 8 KB 缓冲区数。目标数量是使用诸如系统当前状态(包括它的负载、当前进程所请求的内存、计算机上安装的内存量以及配置参数)等多种输入计算得到的。如果 bpool_commit_target 大于 bpool_committed 值,则缓冲池将尝试获得额外内存。如果 bpool_commit_target 小于 bpool_committed 值,则缓冲池将收缩。 |
bpool_visible |
int |
在进程虚拟地址空间中可直接访问的缓冲池中的 8 KB 缓冲区数。不使用地址窗口化扩展插件 (AWE) 时,如果缓冲池已获得它的内存目标 (bpool_committed = bpool_commit_target),则 bpool_visible 的值等于 bpool_committed 的值。 在 32 位版本的 SQL Server 上使用 AWE 时,bpool_visible 表示在访问缓冲池所分配的物理内存时使用的 AWE 映射窗口的大小。此映射窗口的大小由进程地址空间绑定,因此,可见数量将小于提交数量,并且通过为数据库页之外的其他用途而消耗内存的内部组件会进一步减少可见数量。如果 bpool_visible 的值太低,则可能收到内存不足错误。 |
stack_size_in_bytes |
int |
由 SQL Server 创建的每个线程的调用堆栈的大小。 |
os_quantum |
bigint |
非抢先任务的量程,以毫秒数度量。量程(秒)= os_quantum/CPU 时钟速度。 |
os_error_mode |
int |
SQL Server 进程的错误模式。 |
os_priority_class |
int |
指定 SQL Server 进程的优先级类。可以为 NULL。 32 = 正常(错误日志将指出 SQL Server 正以正常的优先级基数 (=7) 启动)。 128 = 高(错误日志将指出 SQL Server 正以高优先级基数启动(=13)。) 有关详细信息,请参阅 priority boost 选项。 |
max_workers_count |
int |
可以创建的最大工作线程数。 |
scheduler_count |
int |
在 SQL Server 进程中配置的用户计划程序数。 |
scheduler_total_count |
int |
SQL Server 中的计划程序总数。 |
deadlock_monitor_serial_number |
int |
当前死锁监视序列的 ID。 |
sqlserver_start_time_ms_ticks |
bigint |
SQL Server 上次启动时的 ms_tick 数。与当前 ms_ticks 列进行比较。 |
sqlserver_start_time |
datetime |
SQL Server 上次启动时的日期和时间。 |
affinity_type |
int |
描述 SQL Server 使用的关联类型。
值说明
1手动
2自动
|
affinity_type_description |
varchar(60) |
描述 affinity_type 列中的值。有关详细信息,请参阅 ALTER SERVER CONFIGURATION (Transact-SQL)。
值说明
MANUAL已为至少一个 CPU 设置关联。
AUTOSQL Server 根据需要在 CPU 之间移动线程。
|
process_kernel_time_ms |
bigint |
内核模式下所有 SQL Server 线程所用的总时间(毫秒)。
注意
该值可能会大于单处理器时钟,因为它包括服务器上所有处理器的时间。
|
process_user_time_ms |
bigint |
用户模式下所有 SQL Server 线程所用的总时间(毫秒)。
注意
该值可能会大于单处理器时钟,因为它包括服务器上所有处理器的时间。
|
time_source |
int |
描述 SQL Server 用于检索时钟时间的 API。 |
time_source_desc |
nvarchar(60) |
描述 time_source 列中的值。 |
virtual_machine_type |
int |
指示 SQL Server 是否正在虚拟化环境中运行。不可以为 NULL。
值说明
0NONE
1HYPERVISOR
2其他
|
virtual_machine_type_desc |
nvarchar(60) |
描述 virtual_machine_type 列。不可以为 NULL。
值说明
无SQL Server 不在虚拟机内运行。
HYPERVISORSQL Server 正在管理程序内运行,这隐含硬件协助的虚拟化。如果实例正在宿主操作系统上运行,说明仍将返回 HYPERVISOR。
其他SQL Server 正在虚拟机内运行,该虚拟机不使用诸如 Microsoft 虚拟 PC 的硬件助手。
|
权限
需要具有服务器的 VIEW SERVER STATE 权限。