QFD*_*Dev 6 sql-server backup restore sql-server-2012
我正在使用 SQL Server 2012 SP2 使用BACKUP TO URL语句将我的事务日志直接备份到 Azure Blob 存储中。
然后我尝试验证我的交易日志,如下所示:
RESTORE VERIFYONLY FROM URL = 'https://mystore.blob.core.windows.net/logfile.trn'
WITH CREDENTIAL = 'azurecreds'
Run Code Online (Sandbox Code Playgroud)
该RESTORE VERIFYONLY操作对 Azure 中的文件进行了租借,我可以使用 Azure Management Studio 的 blob 浏览器查看该文件(我创建的最后 2 个文件没有运行 RESTORE VERIFYONLY)。
我可以使用 Azure Management Studio 手动中断租约,但我是否做错了RESTORE VERIFYONLY在文件上留下活动租约的问题?
这看起来非常类似于:
来自微软支持文章:
症状
假设您使用
RESTORE HEADERONLY或RESTORE FILELISTONLY命令从 Microsoft SQL Server 2014 或 SQL Server 2012 中的 Windows Azure Blob 存储服务恢复数据库。该命令完成后,您将无法删除备份文件。原因
出现此问题的原因是备份文件存在无限租约。在某些情况下,内部线程之间的某些竞争条件会导致租约无法释放。
这在 SQL Server 2012 SP2 的累积更新 4 中被标记为首次修复。虽然修复没有RESTORE VERIFYONLY明确提及,但您一定应该在将其报告为错误之前检查一下。
在撰写本文时,SQL Server 2012 的最新 Service Pack 是SP3,其中还包括上述修复。
最后,为了记录GregGalloway最初在该问题的评论中留下的内容,您可以使用以下 MSDN 文章中的脚本删除活动租约:
| 归档时间: |
|
| 查看次数: |
694 次 |
| 最近记录: |