【问题标题】:Can I delete a DB from azure while is being restored from a BACPAC file?从 BACPAC 文件恢复时,我可以从 azure 中删除数据库吗?
【发布时间】:2018-01-26 19:21:37
【问题描述】:

我有一个 BACPAC 文件正在恢复到新数据库中。后来,我意识到我不再需要数据库了。问题是它还没有完成恢复。

问题是我可以在恢复时删除数据库,并确保 BACPAC 文件不会发生任何事情。

【问题讨论】:

    标签: database azure azure-sql-database database-restore bacpac


    【解决方案1】:

    bacpac 只是还原的(只读)源,没有任何东西可以影响其结构。

    另一方面,您不能删除尚不存在的数据库。恢复完成后,您可以将其删除。

    运行以下查询来监控恢复操作的进度:

    SELECT * FROM sys.dm_operation_status ORDER BY start_time DESC;

    要了解本地 SQL Server 上的 RESTORE 操作的进度,我使用了以下查询:

    SELECT session_id as SPID, command, a.text AS Query, start_time,
     percent_complete, dateadd(second,estimated_completion_time/1000, getdate()) as 
     estimated_completion_time
    FROM sys.dm_exec_requests r CROSS APPLY sys.dm_exec_sql_text(r.sql_handle) a  
    WHERE r.command in ('RESTORE DATABASE')
    

    从 bacpac 还原时,从查询中删除 WHERE 子句,以便您可以确定哪个语句正在执行还原。

    【讨论】:

    • SQL Server 是否有等价物?我只能找到 Azure SQL 的文档。
    • 您的意思是相当于本地 SQL Server 的 sys.dm_operation_status?您是否正在寻找一种方法来衡量在 SQL Server On-premises 上恢复 bacpac 的进度?
    • 是的。我不知道 Azure SQL 的 dm_operation_status,所以我想知道 SQL Server 是否有类似的命令。
    • 我会用这个问题的答案更新我的答案。
    • 您可以创建一个连接项,建议在本地 SQL Server 上支持 sys.dm_operation_status。 connect.microsoft.com/SQLServer/Feedback
    猜你喜欢
    • 2015-08-04
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    • 2011-11-25
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 2023-03-29
    相关资源
    最近更新 更多