将.bak mssql 2005恢复到mssql 2008r2的新服务器

时间:2013-11-15 07:33:30

标签: sql-server database sql-server-2008 sql-server-2005 backup

我使用以下规范从服务器A创建了一个.bak文件(备份):Windows server 2003,MSSQL 2005.现在我想在具有以下规范的新服务器B上恢复此备份:Windows 8,MSSQL 2008 R2。我做了以下尝试进行恢复

  
      
  1. 将文件复制到新服务器(服务器B)
  2.   
  3. 单击Microsoft SQL Server Management Studio 2008R2(服务器B)
  4.   
  5. 右键单击Databases以创建名为Boom(Server B)的新数据库
  6.   
  7. 创建新数据库(Boom)后,右键单击Tasks-> Restore-> Database and
  8.   
  9. 在恢复区域的来源上,单击“从设备点击”并找到.bak文件,选择它并确定为“确定”。
  10.   

我没有收到成功消息,而是收到以下错误:

  

服务器'服务器B'的恢复失败。(Microsft.SqlServer.SmoExtended)   附加信息:System.Data.SqlError:备份集包含除现有“Boom”数据库(Microsoft.SqlServer.Smo)之外的数据库的备份。

请协助,我是MSSQL的新手

2 个答案:

答案 0 :(得分:4)

  

右键单击Databases以创建名为Boom(Server B)的新数据库

     

创建新数据库(Boom)后,右键单击Tasks-> Restore-> Database and

现在你正在创建一个新数据库,并试图用不同的数据库备份覆盖它。因此:

  

备份集包含除现有“Boom”数据库之外的数据库的备份

有一个WITH REPLACE选项允许您继续,但只是避免间接开始:恢复数据库,不要重新建立数据库。

enter image description here

您可能需要首先删除您创建的冗余Boom数据库。无论出于何种原因,如果您无法删除数据库,则必须使用WITH REPLACE

enter image description here

答案 1 :(得分:0)

“服务器'服务器B'的恢复失败。(Microsft.SqlServer.SmoExtended)附加信息:System.Data.SqlError:备份集包含除现有”Boom“数据库之外的数据库的备份(Microsoft.SqlServer) .Smo)。“

当文件的逻辑名称不匹配时,我遇到此错误。检查您备份的数据库的逻辑名称,您将需要为您创建的新数据库使用相同的逻辑名称。

或者你也可以按照ta

的规定使用With Replace选项