我使用 SQL Server Express 2005 作为后端。我以编程方式创建了一个备份文件。如果我使用相同的服务器,那么它会成功恢复数据。但是,如果我们尝试在不同的服务器上恢复,那么它会失败。并抛出以下消息
“备份集保存现有 'DatabaseName' 数据库以外的数据库的备份。RESTORE DATABASE 异常终止。”
在两台服务器上,Sql 服务器实例名称和数据库名称相同。请建议我如何解决此错误
我使用 SQL Server Express 2005 作为后端。我以编程方式创建了一个备份文件。如果我使用相同的服务器,那么它会成功恢复数据。但是,如果我们尝试在不同的服务器上恢复,那么它会失败。并抛出以下消息
“备份集保存现有 'DatabaseName' 数据库以外的数据库的备份。RESTORE DATABASE 异常终止。”
在两台服务器上,Sql 服务器实例名称和数据库名称相同。请建议我如何解决此错误
您需要从文件(包含在备份集中)而不是直接从备份集中恢复。下面的例子是复制一个数据库,但是思路是一样的:
BACKUP DATABASE AdventureWorks
TO AdventureWorksBackups ;
RESTORE FILELISTONLY
FROM AdventureWorksBackups ;
RESTORE DATABASE TestDB
FROM AdventureWorksBackups
WITH MOVE 'AdventureWorks_Data' TO 'C:\MySQLServer\testdb.mdf',
MOVE 'AdventureWorks_Log' TO 'C:\MySQLServer\testdb.ldf';
GO