sys.dm_exec_background_job_queue (Transact-SQL)

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

对计划异步(后台)执行的每个查询处理器作业返回一行。

注意

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

列名称 数据类型 描述
time_queued datetime 作业添加到队列中的时间。
job_id int 作业标识符。
database_id int 执行作业所在的数据库。
object_id1 int 值取决于作业类型。 有关详细信息,请参阅“备注”部分。
object_id2 int 值取决于作业类型。 有关详细信息,请参阅“备注”部分。
object_id3 int 值取决于作业类型。 有关详细信息,请参阅“备注”部分。
object_id4 int 值取决于作业类型。 有关详细信息,请参阅“备注”部分。
error_code int 如果因失败而重新插入作业,则为错误代码。 如果作业已挂起、未被选取或已完成,则为 NULL。
request_type smallint 作业请求的类型。
retry_count smallint 从队列中选取作业又因缺少资源或其他原因而将其重新插入队列的次数。
in_progress smallint 指示作业是否已开始执行。

1 = 已开始

0 = 仍在等待
session_id smallint 会话标识符。
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 权限。

备注

该视图只返回有关异步更新统计作业的信息。 有关异步更新统计信息的详细信息,请参阅 统计信息

通过object_id4 object_id1的值取决于作业请求的类型。 下表总结了这些列对于不同作业类型的含义。

请求类型 object_id1 object_id2 object_id3 object_id4
异步更新统计信息 表或视图的 ID 统计信息 ID 未使用 未使用

示例

以下示例返回 SQL Server 实例中每个数据库的后台队列中的活动异步作业数。

SELECT DB_NAME(database_id) AS [Database], COUNT(*) AS [Active Async Jobs]  
FROM sys.dm_exec_background_job_queue  
WHERE in_progress = 1  
GROUP BY database_id;  
GO  

另请参阅