首页 > 解决方案 > VSS 中的还原操作失败返回 VSS_E_OBJECT_NOT_FOUND

问题描述

我正在尝试通过 VSS 备份和恢复 MS SQL 服务器。我的备份操作运行良好,我将备份元数据存储在 XML 文件中。在还原操作期间,我提供了在备份操作期间创建的相同 XML,发生的情况是在返回 VSS_E_OBJECT_NOT_FOUND 的 PreRestore Stage 中还原间歇性失败。我尝试过以下事情:

  1. 检查我的 VSS 服务在还原时是否正常运行。
  2. 已检查 Microsoft Shadow Copy 提供程序在还原期间正在运行。
  3. 检查恢复期间网络服务是否运行良好。
  4. 在不同的论坛上检查了此错误可能与什么有关,但大多数建议就像尝试重新启动系统一样。

错误出现在以下行之一(间歇性地),有时它在第 1 行,有时在第 2 行或有时在第 3 行中断,我在 PreRestore 事件之前调用的所有这 3 个 api:

CHECK_COM(m_pVssObject->SetAdditionalRestores(myWriterId, VSS_CT_FILEGROUP, logicalPath, compName, true));
CHECK_COM(m_pVssObject->AddNewTarget(myWriterId, VSS_CT_FILEGROUP, logicalPath, compName, wszPath, wszFileNameMdf, false, wszAlternatePath));
CHECK_COM(m_pVssObject->AddNewTarget(myWriterId, VSS_CT_FILEGROUP, logicalPath, compName, wszPath, wszFileNameLdf, false, wszAlternatePath))

这是它返回的响应。

INFO: VSS: ERROR: - Returned HRESULT = 0x80042308
INFO: VSS: ERROR: - Error text: VSS_E_OBJECT_NOT_FOUND

标签: sql-serverwindowsvirtual-shadow-copies

解决方案


错误的一个常见原因VSS_E_OBJECT_NOT_FOUND (Returned HRESULT = 0x80042308)是 VSS 已在作为备份一部分的一个或多个卷上禁用。

  1. 单击开始。
  2. 右键单击我的电脑,然后选择管理。
  3. 右键单击共享文件夹,选择所有任务。
  4. 单击管理卷影副本。
  5. 对于要备份的每个卷,请确保启用了卷影副本。如果某些未启用,则突出显示列表中的卷并单击启用按钮以启用卷影副本。

您还可以测试运行该命令vssadmin list writers


推荐阅读