我正在运行MSSQL Server 2012 RC 0。
我正在使用pipe理工作室来创build数据库的备份,然后在SAME服务器上恢复它,但使用不同的数据库名称。
我可以创build备份正常,但是当我去恢复备份时,我input了我希望创build的数据库的新名称(不存在)。
然后我得到一个错误说:
“恢复数据库”newdatabasename“失败…….由于数据库正在使用,无法获得独占访问权限。
我知道互联网上有很多关于这个的东西,但它更适合于通过同一个数据库进行恢复。
它指的是哪个数据库? 旧的? 我不明白为什么它会引用旧的数据库,因为我从完整的备份文件恢复。 新的数据库甚至还没有创build,所以我也不明白为什么它会指那一个。
任何帮助感激!
请在SSMS中执行以下查询,并将输出中“DatabaseName”列的值与您尝试还原的数据库名称进行比较。
RESTORE HEADERONLY FROM DISK = 'path of your backup file"
我怀疑备份文件是否包含已经存在的其他数据库的数据库备份。
使用T / SQL来恢复数据库。 用于恢复的GUI最好是烦人的。
use master go RESTORE DATABASE NewDatabaseNAme from disk='D:\Path\To\Backup\File.bak' with move 'OldDatabaseFile' to 'e:\Path\To\New\NewDatbaseName.mdf', move 'OldDatabaseLog' to 'e:\Path\To\New\NewDatabaseName_Log.ldf' GO