RESTORE DATABASE命令还原SQLServer 数据库 bak

今天在sqlServer20005 的management studio里使用bak文件还原数据库的时候,总是失败!

Restore failed for Server ‘ADANDELI‘.  (Microsoft.SqlServer.Smo)
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo
The backup set holds a backup of a database other than the existing ‘AAA‘ database.
RESTORE DATABASE is terminating abnormally. (Microsoft SQL Server,错误: 3154)

找不到原因(已经选择了"overwrite the existing database"),只能使用命令来还原了,不知道为什么会这样.

--返回由备份集内包含的数据库和日志文件列表组成的结果集。
--主要获得逻辑文件名
USE master
RESTORE FILELISTONLY
   FROM DISK = ‘g:\back.Bak‘ 
Go
************************************************
/*
利用bak恢复数据库,强制还原(REPLACE)
STATS = 10 每完成10%显示一条记录
DBTest和DBTest_log是上面g:\back.Bak里的逻辑文件
*/
USE master
RESTORE DATABASE DB 
   FROM DISK = ‘g:\back.Bak‘
   WITH MOVE ‘DBTest‘ TO ‘E:\Program Files\Microsoft SQL Server2005\Data\DB.mdf‘, 
   MOVE ‘DBTest_log‘ TO ‘E:\Program Files\Microsoft SQL Server2005\Data\DB_log.ldf‘,
STATS = 10, REPLACE
GO
++++++++++++++++++++++++++++++++

/*
备份数据DB 到.bak文件。然后利用此bak文件恢复一个新的数据库DBTest。
*/
USE master
BACKUP DATABASE DB 
  TO DISK = ‘g:\DBBack0930.bak‘ 
RESTORE FILELISTONLY 
  FROM DISK = ‘g:\DBBack0930.bak‘ 
RESTORE DATABASE DBTest 
  FROM DISK = ‘g:\DBBack0930.bak‘ 
  WITH MOVE ‘DBTest‘ TO ‘E:\Program Files\Microsoft SQL Server2005\Data\DBTest.mdf‘, 
  MOVE ‘DBTest_log‘ TO ‘E:\Program Files\Microsoft SQL Server2005\Data\DBTest_log.ldf‘
GO 
---******************************

http://www.cnblogs.com/adandelion/archive/2006/09/30/519534.html

时间: 2024-08-26 14:48:40

RESTORE DATABASE命令还原SQLServer 数据库 bak的相关文章

SQLSERVER数据库、表的创建及SQL语句命令

SQLSERVER数据库,安装.备份.还原等问题: 一.存在已安装了sql server 2000,或2005等数据库,再次安装2008,会出现的问题 1.卸载原来的sql server 2000.2005,然后再安装sqlserver 2008,否则经常sql server服务启动不了 2.sql server服务启动失败,解决方法: 进入sql serverconfigure manager,点开 Sql server 网络配置(非sql native client 配置),点sqlzhh(

SQL2005中使用backup、restore来备份和恢复数据库

在SQL2005数据库中利用SQL语句进行数据备份与还原: 备份backup:backup database 数据库名称 tO disk = 备份路径例:BACKUP DATABASE test TO disk = 'd:\bak\test.bak' 恢复restore:restore  database 数据库名称from disk = 备份路径例:RESTORE DATABASE test FROM disk = 'd:\bak\test.bak'

命令行下从bak文件恢复sqlserver数据库方法

http://blog.sina.com.cn/s/blog_5cdf6f450102dwir.html 1.先使用restore filelistonly restore filelistonly from disk = 'E:\BaiduYunDownload\shifenzheng.bak' 2.进行恢复 restore database kaifang from disk = 'E:\BaiduYunDownload\shifenzheng.bak' with move 'linshi'

sqlserver 2012数据还原,RESTORE DATABASE 正在异常终止。 (Microsoft SQL Server,错误: 3174)

使用差异性备份文件还原的时候报错: 报错时,通过生成的还原脚本可以看到: RESTORE DATABASE [m] FILE = N'm' FROM DISK = N'D:\m\m_backup_2016_04_07_280002_6355156.bak' WITH FILE = 1, MOVE N'm' TO N'D:\Program Files\Microsoft SQL Server\MSSQL11.YSMSTEST\MSSQL\DATA\\m.mdf', MOVE N'm_log' TO

用asp.net还原与恢复sqlserver数据库

上次做了个项目,涉及到数据库的还原和恢复,到网上找了一下,是利用SQLDMO实现的,只要添加SQLDMO引用就好了,然后利用下边的类的方法就可以实现了.我把原作者的类扩充了一下,可以自动识别web.config里 的数据库连接字符串,可以通过变量设置还原恢复的信息.需要注意的时还原,还原的时候问题最大了,有别的用户使用数据库的时候无法还原,解决办法就是在MASTER数据库中添加一个存储过程:create proc killspid (@dbname varchar(20))asbegindecl

Sqlserver数据库还原一直显示“正在还原…”解决方法

今天在Sqlerver还原数据库时一直就卡在那里提示"正在还原-"的状态,此时无法操作数据库,下面我来给大家介绍解决些问题的方法 解决方法:  代码如下 复制代码 RESTORE DATABASE demo   FROM DISK = 'D:/demo.bak'  WITH MOVE 'demo' TO 'd:/demo.mdf',   MOVE 'demo_log' TO 'd:/demo.ldf',   STATS = 10, REPLACE  GO 如果不清楚备份文件对应的逻辑文

mssql server 2005还原数据库bak文件与“备份集中的数据库备份与现有的xx数据库不同”解决方法

mssql server 2005还原数据库bak文件,网站使用虚拟主机建站会经常遇到,一般情况下,主机商有在线的管理程序,但有时候没有的话,就需要本地还原备份sql数据库了.这种情况mssql server 2008也同样会出现,有时候会出现“备份集中的数据库备份与现有的xx数据库不同”的错误提示,本文也一并把解决方法说道说道. 第一部分,mssql server 2005(2008)还原数据库bak文件. 一.连接上数据库,右键数据库,选择新建数据库,输入你要还原数据库的名称. 二.确定后右

数据库.bak文件还原报错的处理办法

今天从网上下了个Demo,里面有个.bak文件,就试着还原了一下,结果发现报了错.是了两种方式导入,都不行. 最终找到了解决办法: 可以直接用sql语句对.bak文件进行还原. RESTORE DATABASE QuartzScheduler --数据库名 FROM DISK = N'C:\Users\dujiaoyang\Desktop\QuartzScheduler\QuartzScheduler.bak' with replace,--.bak文件路径 NOUNLOAD, STATS =

SQL Server 还原错误“restore database正在异常终止 错误 3154”

今天在还原数据库时,先建立相同名字的数据库,然后在该数据库上右键还原数据库.遇到了这样的一个错误: “备份集中的数据库备份与现有的 'RM_DB' 数据库不同. RESTORE DATABASE 正在异常终止. (Microsoft SQL Server,错误: 3154) ” 很显然,这是由于备份的数据库版本和我现在还原的数据库版本不一样导致的. 最终通过以下方法解决了此类问题: (1)直接在“数据库”上右键菜单->还原文件和文件组 (2)直接写入数据库名字-RM_DB,点击确定,OK!还原成