欢迎访问机房运维工作室

爱数知识库

AnyBackup-Microsoft SQL Server 恢复失败,提示错误:由于选择不覆盖现有数据库,并且数据库已存在,所以不允许恢复此数据库

频道:爱数知识库 日期: 浏览:22

AnyBackup-Microsoft SQL Server 恢复失败,提示错误:由于选择不覆盖现有数据库,并且数据库已存在,所以不允许恢复此数据库

关键字

不覆盖、已存在

适用产品

  • AnyBackup 6.0.x
  • 超易备 5.0.x

问题描述

AnyBackup 在进行 Microsoft SQL Server 浏览恢复任务时,提示以下错误信息:

由于选择不覆盖现有数据库,并且数据库student已存在,所以不允许恢复此数据库。(错误提供者:sqlBackup,错误值:e0346017,错误位置:ncMSSQLRestoreExec.cpp:1186


问题影响

Microsoft SQL Server 数据库恢复失败。

问题原因

AnyBackup 执行恢复任务不勾选覆盖现有数据库选项,如果恢复目的端存在同名数据库,不允许执行恢复此数据库操作,这是 AnyBackup 保障数据安全的产品设计使然。

解决方案

为了解决此问题,可以通过在操作 Microsoft SQL Server 恢复任务时,勾选覆盖现有数据库选项,或者通过 Microsoft SQL Server 浏览恢复到新数据库名。

方案一,在操作 SQL Server 备份任务进行数据恢复时,设置恢复后的数据库名称为原名称,并勾选覆盖现有数据库。

警告:勾选覆盖现有的数据库选项后会导致恢复目的端的同名数据库被覆盖

1. 在操作恢复过程中,配置选择恢复位置时选中原数据库名称。



2. 配置选择恢复策略时勾选恢复策略栏目下的覆盖现有的数据库选项。


方案二,在操作 SQL Server 备份任务进行数据恢复时,选择恢复到新数据库名

在操作恢复过程中,配置选择恢复位置时,选中目标数据库名称,填写一个新的数据库名称。下图示例中,原数据库名称为 student,填写目标数据库名称为 student_new

注意:目标数据库名称必须是恢复异机服务器上不存在的,指定目标数据库名称的方式进行恢复时一次只能恢复一个数据库,不能同时勾选多个数据库进行指定数据库名称恢复。


更多信息

AnyBackup 在进行数据库浏览恢复时会优先考虑数据安全策略,避免误操作导致的生产数据库被覆盖。例如: Microsoft SQL Server 恢复时不勾选覆盖现有的数据库选项,当存在同名数据库时会恢复失败,并提示错误消息。Oracle 数据库恢复时如果目标数据库状态为 open,恢复也会失败,并提示错误信息。