开发者社区 > 数据库 > 数据库管理工具 > 正文

在DBS数据库备份中,还原中的数据库怎么查看进度呢?SQLSERVER。

在DBS数据库备份中,还原中的数据库怎么查看进度呢?SQLSERVER。

展开
收起
-Feng、冯冯 2024-01-23 11:00:00 157 0
2 条回答
写回答
取消 提交回答
  • 在SQL Server数据库中,如果正在进行数据库还原操作,你可以通过SQL Server Management Studio (SSMS) 或者查询SQL Server的系统动态视图来查看还原进度。以下是两种方法:

    方法一:通过SQL Server Management Studio (SSMS)

    1. 打开SQL Server Management Studio并连接到目标SQL Server实例。
    2. 当你正在进行数据库还原操作时,SSMS的任务进度窗口通常会显示当前正在进行的还原任务及其进度百分比。
    3. 如果已经开始了数据库还原但未在任务进度窗口看到,你可以尝试查看“活动监视器”(Activity Monitor)来观察正在进行的数据库操作。

    方法二:通过Transact-SQL查询

    可以查询 sys.dm_exec_requestssys.dm_operation_status 动态管理视图来获取还原操作的状态和进度。例如:

    -- 查询当前正在执行的还原操作
    SELECT 
        db_name(database_id) AS DatabaseName,
        command,
        percent_complete,
        start_time,
        estimated_completion_time,
        CAST(percent_complete AS DECIMAL(5,2)) AS [Percent_Complete]
    FROM 
        sys.dm_exec_requests
    WHERE 
        command LIKE '%RESTORE%'
        AND session_id > 50; -- 过滤掉系统会话
    
    -- 或者查询最近的还原操作状态
    SELECT 
        database_name,
        operation,
        state_desc,
        percent_complete,
        start_time,
        end_time
    FROM 
        sys.dm_operation_status
    WHERE 
        operation IN ('RESTORE_DATABASE')
    ORDER BY 
        start_time DESC;
    

    请在执行查询时替换合适的关键字以匹配正在执行的还原操作,并注意在还原期间持续执行这些查询以跟踪进度变化。还原完成后,相应的行通常会从这些动态视图中消失。

    2024-01-26 22:45:19
    赞同 展开评论 打赏
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在SQL Server中,你可以使用以下查询来查看数据库备份的进度:

    SELECT session_id, command, percent_complete, start_time, status, DB_Name(database_id) as DatabaseName
    FROM sys.dm_exec_requests
    WHERE command = 'RESTORE DATABASE'
    

    这个查询将显示正在执行的还原操作的会话ID、命令、完成百分比、开始时间、状态和数据库名称。通过观察percent_complete列,你可以了解还原操作的进度。

    2024-01-23 13:34:58
    赞同 展开评论 打赏

热门讨论

热门文章

相关电子书

更多
2022 DTCC-阿里云一站式数据库上云最佳实践 立即下载
云时代的数据库技术趋势 立即下载
超大型金融机构国产数据库全面迁移成功实践 立即下载