none
SQL Server重做索引进度查询 RRS feed

全部回复

  • Depends on sql version.
    2020年9月15日 0:10
  • 你好,

    检查以下查询

    SELECT r.session_id,r.command,CONVERT(NUMERIC(6,2),r.percent_complete)
    AS [Percent Complete],CONVERT(VARCHAR(20),DATEADD(ms,r.estimated_completion_time,GetDate()),20) AS [ETA Completion Time],
    CONVERT(NUMERIC(10,2),r.total_elapsed_time/1000.0/60.0) AS [Elapsed Min],
    CONVERT(NUMERIC(10,2),r.estimated_completion_time/1000.0/60.0) AS [ETA Min],
    CONVERT(NUMERIC(10,2),r.estimated_completion_time/1000.0/60.0/60.0) AS [ETA Hours],
    CONVERT(VARCHAR(1000),(SELECT SUBSTRING(text,r.statement_start_offset/2,
    CASE WHEN r.statement_end_offset = -1 THEN 1000 ELSE (r.statement_end_offset-r.statement_start_offset)/2 END)
    FROM sys.dm_exec_sql_text(sql_handle)))
    FROM sys.dm_exec_requests r WHERE command IN ('Alter Index')

    如果SQL Server版本是2014及以上,也可以使用以下查询脚本。

    SELECT session_id,
    sp.cmd,
    sp.hostname,
    db.name,
    sp.last_batch,
    node_id,
    physical_operator_name,
    SUM(row_count) row_count,
    SUM(estimate_row_count) AS estimate_row_count,
    CAST(SUM(row_count)*100 AS float)/SUM(estimate_row_count) as EST_COMPLETE_PERCENT
    FROM sys.dm_exec_query_profiles eqp
    join sys.sysprocesses sp on sp.spid=eqp.session_id
    join sys.databases db on db.database_id=sp.dbid
    WHERE session_id in (select spid from sys.sysprocesses sp where sp.cmd like '%INDEX%')
    GROUP BY session_id, node_id, physical_operator_name, sp.cmd, sp.hostname, db.name, sp.last_batch
    ORDER BY session_id, node_id desc;

    当重建失败或被取消时,回滚可能会很长。


    如果您觉得我的回复有所帮助,请帮忙‘标记为答案'以帮助其他社区成员迅速找到有用的答复。



    2020年9月15日 2:32
  • You can pause and resume the process in sql2019.
    2020年9月15日 23:53
  • 你好,

    请问您的问题解决了吗?
    如果您觉得我们的回复帮助你解决了该问题,请帮忙‘标记为答案'以帮助其他社区成员迅速找到有用的答复。

    如果没有,请回复并告诉我们当前情况,以便提供进一步的帮助。
    谢谢


    ""SQL Server related"" forum will be migrated to a new home on Microsoft Q&A SQL Server!
    We invite you to post new questions in the "SQL Server related" forum’s new home on Microsoft Q&A SQL Server !
    For more information, please refer to the sticky post.

    2020年9月21日 1:18