sys.dm_os_sys_info (Transact-SQL)

適用対象: はいSQL Server (サポートされているすべてのバージョン) はいAzure SQL データベース はいAzure SQL Managed Instance はいAzure Synapse Analytics はいParallel Data Warehouse

コンピューターに関する有用な情報のその他のセット、およびによって使用および使用されるリソースについての情報を返し SQL Server ます。

注意

これをまたはから呼び出すに Azure Synapse Analytics は Analytics Platform System (PDW) 、という名前を使用し sys.dm_pdw_nodes_os_sys_info ます。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。

列名 データ型 説明とバージョン固有の注意事項
cpu_ticks bigint 現在の CPU ティック数を指定します。 CPU ティックは、プロセッサの RDTSC カウンターから取得されます。 これは、単調に増加する数値です。 NULL 値は許可されません。
ms_ticks bigint コンピューターが起動してからのミリ秒数を指定します。 NULL 値は許可されません。
cpu_count int システム上の論理 CPU の数を指定します。 NULL 値は許可されません。
hyperthread_ratio int 1つの物理プロセッサパッケージによって公開される論理コアまたは物理コアの数の比率を指定します。 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 。

ユーザーモードでプロセスで使用できる仮想メモリの量。 これは、3 GB スイッチを使用して SQL Server が開始されたかどうかを判断するために使用できます。
virtual_memory_kb bigint 適用対象: SQL Server 2012 (11.x) 以降。

ユーザーモードでのプロセスで使用可能な仮想アドレス空間の合計サイズを指定します。 NULL 値は許可されません。
bpool_committed int 適用対象: SQL Server 2008 から SQL Server 2008 R2 。

メモリマネージャーでコミットされたメモリをキロバイト (KB) 単位で表します。 メモリ マネージャー内の予約済みメモリは含まれません。 NULL 値は許可されません。
committed_kb int 適用対象: SQL Server 2012 (11.x) 以降。

メモリマネージャーでコミットされたメモリをキロバイト (KB) 単位で表します。 メモリ マネージャー内の予約済みメモリは含まれません。 NULL 値は許可されません。
bpool_commit_target int 適用対象: SQL Server 2008 から SQL Server 2008 R2 。

SQL Server memory manager で使用できるメモリの量をキロバイト (KB) 単位で表します。
committed_target_kb int 適用対象: SQL Server 2012 (11.x) 以降。

SQL Server memory manager で使用できるメモリの量をキロバイト (KB) 単位で表します。 目標値は、次のようなさまざまな入力を使用して計算されます。

-システムの負荷を含むシステムの現在の状態

-現在のプロセスによって要求されたメモリ

-コンピューターにインストールされているメモリの量

-構成パラメーター

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 KB バッファーの数。 アドレスウィンドウ拡張機能 (AWE) を使用していない場合、バッファープールがメモリターゲット (bpool_committed = bpool_commit_target) を取得すると、bpool_visible の値は bpool_committed の値と等しくなります。SQL Server の32ビットバージョンで AWE を使用する場合、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 /CPU クロック速度。 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 現在のデッドロック監視シーケンスの ID を指定します。 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 データベース エンジン ます。
affinity_type int 適用対象: SQL Server 2008 R2 以降。

現在使用中のサーバー CPU プロセス関係の種類を指定します。 NULL 値は許可されません。 詳細については、「 ALTER SERVER CONFIGURATION (transact-sql)」を参照してください。

1 = MANUAL

2 = 自動
affinity_type_desc varchar(60) 適用対象: SQL Server 2008 R2 以降。

列について説明し affinity_type ます。 NULL 値は許可されません。

MANUAL = 少なくとも 1 台の CPU に関係が設定されています。

AUTO = SQL Server は、cpu 間でスレッドを自由に移動できます。
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 以降。

SQL Serverウォールクロック時間を取得するために使用している API を示します。 NULL 値は許可されません。

0 = QUERY_PERFORMANCE_COUNTER

1 = MULTIMEDIA_TIMER
time_source_desc nvarchar(60) 適用対象: SQL Server 2008 R2 以降。

列について説明し time_source ます。 NULL 値は許可されません。

QUERY_PERFORMANCE_COUNTER = Queryperformancecounter API は、ウォールクロック時間を取得します。

MULTIMEDIA_TIMER = ウォールクロック時間を取得する マルチメディアタイマー API。
virtual_machine_type int 適用対象: SQL Server 2008 R2 以降。

SQL Serverが仮想化環境で実行されているかどうかを示します。 NULL 値は許可されません。

0 = NONE

1 = HYPERVISOR

2 = OTHER
virtual_machine_type_desc nvarchar(60) 適用対象: SQL Server 2008 R2 以降。

列について説明し virtual_machine_type ます。 NULL 値は許可されません。

NONE = SQL Server は仮想マシン内で実行されていません。

ハイパーバイザー = SQL Server ハイパーバイザーを実行する os によってホストされる仮想マシン内で実行されている (ハードウェア支援による仮想化を採用したホスト os)。

OTHER = SQL Server は、Microsoft VIRTUAL PC などのハードウェアアシスタントを使用しない OS によってホストされる仮想マシン内で実行されています。
softnuma_configuration int 適用対象: SQL Server 2016 (13.x) 以降。

NUMA ノードの構成方法を指定します。 NULL 値は許可されません。

0 = OFF はハードウェアの既定値を示します。

1 = 自動ソフト NUMA

2 = レジストリを使用した手動ソフト NUMA
softnuma_configuration_desc nvarchar(60) 適用対象: SQL Server 2016 (13.x) 以降。

OFF = ソフト NUMA 機能が OFF

ON = ソフト SQL Server NUMA の NUMA ノード サイズを自動的に決定します

MANUAL = 手動で構成されたソフト NUMA
process_physical_affinity nvarchar(3072) 適用対象: から開始します SQL Server 2017 (14.x) 。

情報はまだ提供されていません。
sql_memory_model int 適用対象: SQL Server 2012 (11.x)SQL Server 2016 (13.x)SP4、SP1 以降。

によってメモリの割り当てに使用 SQL Server されるメモリ モデルを指定します。 NULL 値は許可されません。

1 = 従来のメモリ モデル
2 = メモリ内のページのロック
3 = メモリ内の大きなページ
sql_memory_model_desc nvarchar(120) 適用対象: SQL Server 2012 (11.x)SQL Server 2016 (13.x)SP4、SP1 以降。

によってメモリの割り当てに使用 SQL Server されるメモリ モデルを指定します。 NULL 値は許可されません。

= CONVENTIONAL SQL Serverは、従来のメモリ モデルを使用してメモリを割り当てしています。 これは、起動時にサービス アカウントに Lock Pages in Memory 特権が付与されていない SQL Server 場合の既定の SQL メモリ モデルです。
= LOCK_PAGES SQL Serverはメモリのロック ページを使用してメモリを割り当て中です。 これは、サービス アカウントが起動時にロック SQL Serverロック ページ特権を持つ場合の既定の sql メモリ マネージャー SQL Serverです。
= LARGE_PAGES SQL Serverはメモリの大きなページを使用してメモリを割り当て中です。 SQL Serverは、サーバーの起動時に SQL Server サービス アカウントがメモリ内のロック ページ特権を持ち、トレース フラグ 834 がオンになっている場合にのみ、Large Pages アロケーターを使用して Enterprise Edition でのみメモリを割り当てる必要があります。
pdw_node_id int 適用対象: Azure Synapse Analytics 、 Analytics Platform System (PDW)

このディストリビューションが含まれるノードの識別子。
socket_count int 適用対象: SQL Server 2016 (13.x) SP2 以降。

システムで使用できるプロセッサ ソケットの数を指定します。
cores_per_socket int 適用対象: SQL Server 2016 (13.x) SP2 以降。

システムで使用できるソケットあたりのプロセッサ数を指定します。
numa_node_count int 適用対象: SQL Server 2016 (13.x) SP2 以降。

システムで使用できる NUMA ノードの数を指定します。 この列には、物理 NUMA ノードとソフト NUMA ノードが含まれます。

アクセス許可

および SQL Server の場合SQL Managed Instanceアクセス許可が VIEW SERVER STATE 必要です。
基本 SQL Database、S0、S1 のサービス目標、およびエラスティック プール内のデータベースの場合は、サーバー 管理者アカウントまたは Azure Active Directory 管理者アカウントが必要です。 他のすべてのサービスSQL Database、データベース VIEW DATABASE STATE でアクセス許可が必要です。

参照

動的管理ビューと動的管理関数 (Transact-SQL)
SQL Server オペレーティング システム関連の動的管理ビュー(Transact-SQL)