sys.dm_io_pending_io_requests (Transact-SQL)

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例Azure Synapse AnalyticsAnalytics Platform System (PDW)

为 SQL Server 中每个挂起的 I/O 请求返回一行。

注意

若要从 Azure Synapse Analytics 或 Analytics 平台系统(PDW)调用此名称,请使用名称 sys.dm_pdw_nodes_io_pending_io_requests。 Azure Synapse Analytics 中的无服务器 SQL 池不支持此语法。

列名称 数据类型 描述
io_completion_request_address varbinary(8) IO 请求的内存地址。 不可为 null。
io_type nvarchar(60) 挂起的 IO 请求的类型。 不可为 null。
io_pending_ms_ticks bigint 仅供内部使用。 不可为 null。
io_pending int 指示 I/O 请求是挂起 (1)还是由操作系统 (0) 完成。 即使 OS 已完成请求,I/O 请求仍可能挂起,但 SQL Server 尚未执行上下文开关,在此开关中处理 I/O 请求并将其从此列表中删除。 不可为 null。

0 = 挂起的 SQL Server
1 = 挂起的 OS
io_completion_routine_address varbinary(8) I/O 请求完成时调用的内部函数。 可以为 Null。
io_user_data_address varbinary(8) 仅供内部使用。 可以为 Null。
scheduler_address varbinary(8) 发出此 I/O 请求的计划程序。 I/O 请求将显示于计划程序的挂起 I/O 列表中。 有关详细信息,请参阅 sys.dm_os_schedulers (Transact-SQL)。 不可为 null。
io_handle varbinary(8) I/O 请求中所使用文件的文件句柄。 可以为 Null。
io_offset bigint IO 请求的偏移量。 不可为 null。
io_handle_path nvarchar(256) I/O 请求中使用的文件的路径。 可以为 Null。
pdw_node_id int 适用于:Azure Synapse Analytics、Analytics Platform System (PDW)

此分发所在节点的标识符。

权限

对于 SQL Server 和 SQL 托管实例,需要 VIEW SERVER STATE 权限。

在SQL 数据库基本、S0S1 服务目标以及弹性池中的数据库、服务器管理员帐户、Microsoft Entra 管理员帐户或服务器角色的成员##MS_ServerStateReader##身份是必需的。 对于所有其他 SQL 数据库服务目标,需要数据库的 VIEW DATABASE STATE 权限或 ##MS_ServerStateReader## 服务器角色中的成员身份。

SQL Server 2022 及更高版本的权限

要求对服务器具有 VIEW SERVER PERFORMANCE STATE 权限。

另请参阅

动态管理视图和函数 (Transact-SQL)
与 I O 相关的动态管理视图和函数 (Transact-SQL)