sp_monitor (Transact-SQL)
適用対象: SQL Server
SQL Server に関する統計情報を表示します。
構文
sp_monitor
[ ; ]
引数
[なし] :
リターン コードの値
0
(成功) または 1
(失敗)。
結果セット
列名 | 説明 |
---|---|
last_run |
sp_monitor が最後に実行された時刻。 |
current_run |
sp_monitor が実行されている時間。 |
seconds |
sp_monitor が実行されてからの経過秒数。 |
cpu_busy |
サーバー コンピューターの CPU が SQL Server の作業を完了した秒数。 |
io_busy |
SQL Server が入力操作と出力操作の実行に費やした秒数。 |
idle |
SQL Server がアイドル状態だった秒数。 |
packets_received |
SQL Server によって読み取られた入力パケットの数。 |
packets_sent |
SQL Server によって書き込まれた出力パケットの数。 |
packet_errors |
パケットの読み取りと書き込み中に SQL Server で発生したエラーの数。 |
total_read |
SQL Server による読み取りの数。 |
total_write |
SQL Server による書き込みの数。 |
total_errors |
読み取りと書き込み中に SQL Server で発生したエラーの数。 |
connections |
SQL Server へのログインまたは試行されたログインの数。 |
解説
SQL Server は、一連の機能を通じて、どれだけの作業が行われたかを追跡します。 sp_monitor
を実行すると、これらの関数によって返された現在の値が表示され、プロシージャが最後に実行されてからの変更量が表示されます。
各列について、統計情報は number(number)-number% または number(number) の形式で出力されます。 最初の 番号 は、SQL Server が再起動されてからの秒数 ( cpu_busy
、 io_busy
、 idle
) または合計数 (他の変数の場合) を指します。 かっこ内の number は、最後に実行された sp_monitor
以降の秒数または合計数を示します。 パーセンテージは、 sp_monitor
が最後に実行されてからの時間の割合です。 たとえば、レポートに cpu_busy
が 4250(215)-68%
と表示されている場合、SQL Server が最後に起動されてから 4,250 秒、 sp_monitor
が最後に実行されてから 215 秒、 sp_monitor
が最後に実行されてからの合計時間の 68% が CPU ビジー状態でした。
アクセス許可
sysadmin固定サーバー ロールのメンバーシップが必要です。または、このストアド プロシージャに対して直接アクセス許可を実行する必要があります。
例
次の例では、SQL Server のビジー状態に関する情報を報告します。
USE master;
GO
EXEC sp_monitor;
結果セットは次のとおりです。
last_run current_run seconds
----------------------- ----------------------- ---------
2024-05-01 15:27:51.287 2024-08-21 17:20:34.097 9683563
cpu_busy io_busy idle
--------------- ------------- --------------------
14452(14451)-0% 2555(2554)-0% 4371742(4371629)-45%
packets_received packets_sent packet_errors
---------------- ------------ -------------
18032(17993) 64572(64533) 0(0)
total_read total_write total_errors connections
----------- ----------- ------------- --------------
1593(1593) 4687(4687) 0(0) 155625(155557)