使用位置A中的文件创建数据库备份数据库文件,然后使用ALTER Database MODIFY FILE将数据库文件移动到位置B
现在,当文件位于位置A时,使用WITH REPLACE恢复备份。是否应在新位置中指定WITH MOVE选项?或者,WITH REPLACE是否意味着使用当前位置,而不管它们在创建备份时位于何处?
发布于 2009-07-22 16:23:15
您不必指定WITH MOVE。
发布于 2017-03-04 01:51:33
看起来微软在SQL Server 2012 vs 2008中改变了行为。如果您备份的数据库在位置A上有文件,然后文件移动到位置B,那么,当您使用"WITH REPLACE“而不使用"WITH MOVE”恢复数据库时,即使位置A不存在,SQL 2005/2008中的恢复也会成功。恢复后,数据库仍会将文件放在位置B上(截至恢复前)。但是,与SQL 2012完全相同的情况是,恢复失败,并显示错误,您需要使用"WITH MOVE“选项。
不确定这是否是故意的,因为我还没有发现Microsoft记录的更改...
https://stackoverflow.com/questions/1166225
复制相似问题