您的位置:首页 > 数据库

sql2008“备份集中的数据库备份与现有的xx数据库不同”解决方法

2012-09-03 17:09 471 查看
因为是在另一台电脑对同名数据库做的备份,用常规方法还原,提示不是相同数据库,不让还原,在网上找到下面的方法解决了:

一、右击系统数据库master,新建查询

执行以下SQL代码:

RESTORE DATABASE xxx
FROM DISK = 'E:\DB\xxx.bak'   --bak文件路径
with replace,
MOVE 'xxx' TO 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\xxx.mdf',   --mdf文件路径
MOVE 'xxx_log' TO 'D:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\xxx.ldf'   --ldf文件路径


注释:xxx是你需要还原的数据库名称,xxx.bak是你需要还原的备份文件。

二、上面方法执行成功后,只有部分的表结构已经还原,而且表中没有数据,这时就可以用系统默认的方法再用xxx.bak文件还原一次数据库就大功告成了,必须要选中覆盖还原哦。

或者

完整代码样例:

Sql代码

USE Master

GO

ALTER DATABASE CQMineOA SET OFFLINE WITH ROLLBACK IMMEDIATE

GO

restore database CQMineOA from disk = 'e:\CQMineOA.bak'

WITH MOVE 'CQMineOA' TO 'E:\db\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\CQMineOA.mdf',

MOVE 'CQMineOA_log' www.2cto.com TO 'E:\db\Microsoft SQL Server\MSSQL10.SQLEXPRESS\MSSQL\DATA\CQMineOA.ldf',

replace,NOUNLOAD,STATS=10

GO

alter database CQMineOA set online

GO
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐