システム動的管理ビュー

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Microsoft Fabric の SQL 分析エンドポイントMicrosoft Fabric のウェアハウス

動的管理ビュー (DMV) と動的管理機能 (DMF) は、サーバー インスタンスの正常性の監視、問題の診断、パフォーマンスの調整に使用できるサーバー状態情報を返します。

重要

動的管理ビューと関数は、実装固有の内部状態データを返します。 スキーマと返されるデータは、SQL Server の今後のリリースで変更される可能性があります。 そのため、今後のリリースの動的管理ビューと関数は、このリリースの動的管理ビューと機能と互換性がない可能性があります。 たとえば、SQL Server の今後のリリースでは、列リストの末尾に列を追加することで、動的管理ビューの定義が拡張される可能性があります。 返される列の数が変わってアプリケーションが中断されるおそれがあるため、運用環境のコードで SELECT * FROM dynamic_management_view_name という構文を使うことはお勧めしません。

動的管理ビューと動的管理関数には 2 つの種類があります。

  • サーバー スコープの動的管理ビューと動的管理関数。 これらには、サーバーでの VIEW SERVER STATE 権限が必要です。 SQL Server 2022 以降の場合は、VIEW Standard Edition RVER PERFORMANCE STATE が必要です。または、セキュリティ関連のいくつかの DMV には VIEW Standard Edition RVER Standard Edition CURITY STATE が必要です。

  • データベース スコープの動的管理ビューと動的管理関数。 これらには、データベースに対する VIEW DATABASE STATE 権限が必要です。 SQL Server 2022 以降では、VIEW DATABA Standard Edition パフォーマンス状態が必要です。セキュリティ関連のいくつかの DMV には VIEW DATABA Standard Edition Standard Edition CURITY STATE が必要です。

クエリ動的管理ビュー

動的管理ビューは、2 部構成、3 部構成、または 4 部構成の名前を使用して Transact-SQL ステートメントで参照できます。 一方、動的管理関数は、2 部構成の名前または 3 部構成の名前を使用して、Transact-SQL ステートメントで参照できます。 動的管理ビューと動的関数は、1 部構成の名前を使用して Transact-SQL ステートメントで参照することはできません。

すべての動的管理ビューと動的管理関数は sys スキーマに含まれ、dm_* という名前付け規則に従います。 動的管理ビューまたは動的管理関数を使用するときには、sys スキーマを使用して、ビューまたは関数の名前にプレフィックスを付ける必要があります。 たとえば、動的管理ビュー dm_os_wait_stats をクエリするには、次のクエリを実行します。

SELECT wait_type, wait_time_ms
FROM sys.dm_os_wait_stats;

必要なアクセス許可

動的管理ビューまたは関数に対してクエリを実行するには、オブジェクトと VIEW Standard Edition RVER STATE または VIEW DATABA Standard Edition STATE 権限に対するStandard Edition LECT 権限が必要です。 これらの権限を使用することにより、動的管理ビューと動的管理関数に対するユーザーまたはログインのアクセスを選択的に制限できます。 これを行うには、最初にmasterユーザーを作成してから、アクセスしたくない動的管理ビューまたは関数に対するユーザー Standard Edition LECT アクセス許可を拒否します。 この後、ユーザーは、ユーザーのデータベース コンテキストに関係なく、これらの動的管理ビューまたは関数から選択することはできません。

Note

DENY が優先されるため、ユーザーに VIEW Standard Edition RVER STATE 権限が付与されていても、VIEW DATABA Standard Edition STATE 権限が拒否されている場合、ユーザーはサーバー レベルの情報を表示できますが、データベース レベルの情報は表示できません。

このセクションの内容

動的管理ビューと機能は、次のカテゴリに分類されています。