数据库还原成功之后,数据库依然处于还原状态

今天在还原数据库的时候,在ssms用以下代码还原数据库:

RESTORE DATABASE [TEST] FROM  DISK = N‘D:\TEST.BAK‘ WITH  FILE = 1,
MOVE N‘TEST‘ TO N‘C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\test.mdf‘,
MOVE N‘TEST_log‘ TO N‘C:\Program Files\Microsoft SQL Server\MSSQL10_50.MSSQLSERVER\MSSQL\DATA\test_log.LDF‘,
NORECOVERY,  NOUNLOAD,  REPLACE,  STATS = 10

还原成功之后,刷新数据库列别,却发现test数据库上有一个箭头,表明仍然处于 “还原”状态,等待几分钟之后依然不变,数据库也无法使用。

于是度娘,找到以下网站:

http://bbs.csdn.net/topics/70037968

里面有童鞋遇到了相同的问题,回复里面有zjcxc(邹建)大师的回复,遇到这种情况,执行以下代码:

--查询分析器中执行下面的语句就行了,注意修改库名

Restore log 你的库名 with recovery

在执行以上代码之后,结果如下:

RESTORE LOG 成功处理了 0 页,花费 3.554 秒(0.000 MB/秒)。

然后数据库也可以使用了。

虽然不太清楚原理是啥,但好歹问题解决了。如果有哪位大师能告诉小弟原理,小弟感激不尽,还可以惠及其他童鞋呢 ^_^

数据库还原成功之后,数据库依然处于还原状态

时间: 2024-10-10 21:36:56

数据库还原成功之后,数据库依然处于还原状态的相关文章

Sql2012数据库还原

Sql2012数据库还原(通过.bak数据库备份文件) 昨天系统挂了,那叫一个悲惨,重装了系统,但是sql2012的数据没有备份,同事帮忙发来备份文件(.bak),开始还原数据. 步骤:1 自己新建一个数据库,这个数据库就是最终还原的数据库.(图1) 图一 2 右击"shu ju huan yuan" 数据库-->任务-->还原数据库,结果如图二 3选择还原的数据(还原的备份集) 选择通过设备还原-->然后选取还原的备份文件(.bak)       问题1:结尾日志文

数据库还原备份傻瓜示脚本

#!/bin/bash #初始数据库文件放在/soft目录下,备份数据库文件放在/tzxdb/backup/目录下 sif-stop echo "正在停止应用,请等待1分钟" sleep 60 dbname=$(su - db2inst1 -c "db2 list db directory"|sed -n "10p"|awk '{print $5}'|awk -F "/" '{print $3}') #获取数据库名 read 

backup2:数据库还原

数据库还原的操作,分两步进行:第一步,验证(verify)备份文件:第二步,根据备份策略还原数据库: 参考<backup1:开始数据库备份>,备份策略是: 一周一次完整备份,一天一次差异备份,一小时一次事务日志备份 数据/日志的每次备份都使用一个单独的备份文件,数据备份的扩展名是 .bak,日志备份的扩展名是.trn 一,验证(Verifiy)备份文件 1,查看备份文件的文件列表(Data File 和 Log File) 由于,数据或日志的每次备份,都使用一个单独的备份文件,因此,在备份文件

数据库还原后一直提示正在还原

问题:数据库还原后一直提示正在还原 解决方法: 新建查询中执行: restore database 学校教务系统 with recovery 脚本,然后刷新数据库就可以空单到数据库节点学校教务系统里面的内容了. restore database datebasename with recovery  其中databasename是正在还原的数据名字 刷新下数据库就出现了节点信息了,还原状态就消失了. 如果一个数据库备份到另外一个电脑或者服务器,建议使用还原数据库.不要采用新建数据库,然后再还原数

mssql2008数据库还原备份教程

一.数据库的还原 很多程序需要搭配mssql数据库,今天我们一起来学习如何对数据库的还原备份的操作.以mssql 2008数据库还原备份bak文件为例: 我们登陆进入MsSql 2008后,右键数据库,选择还原数据库 进入还原界面,如上图 1.选择需要还原的数据库,您要还原的目标数据库可以是还原到您已经有的数据库上也可以新建一个名字,还原成功后自然会出现以您新建的数据库名称的数据. 2.源设备就是您即将要还原的数据库的文件. 3.选择用于还原的备份集,要勾选.否则确认的时候会提示您”必须选择还原

sql数据库还原,出现媒体簇的结构不正确,SQL Server无法处理此媒体簇的解决方案之一。

问题: sql数据库还原,出现媒体簇的结构不正确,SQL Server无法处理此媒体簇. 异常如下图. 造成问题的原因: 我的电脑上安装了sql2005和sql2008,问题就在于我用sql2008的SQL Server Management Studio工具打开的是sql2005的实例.用SELECT @@VERSION语句即可查看当前的实例版本.如下图. 所以最终的解决方案就是,只要保证连接实例所在的版本号大于等于要还原的数据库的版本号,即可还原成功. sql数据库还原,出现媒体簇的结构不正

数据库还原

sql2008“备份集中的数据库备份与现有的xx数据库不同”解决方法 因为是在另一台电脑对同名数据库做的备份,用常规方法还原,提示不是相同数据库,不让还原,在网上找到下面的方法解决了: 一.右击系统数据库master,新建查询 执行以下SQL代码: RESTORE DATABASE xxx FROM DISK = 'E:\DB\xxx.bak' --bak文件路径 with replace, MOVE 'xxx' TO 'D:\Program Files\Microsoft SQL Server

sql数据库还原,出现媒体簇的结构不对,SQL Server无法处理此媒体簇的解决方式之中的一个。

问题: sql数据库还原.出现媒体簇的结构不对,SQL Server无法处理此媒体簇. 异常例如以下图. 造成问题的解决办法: 我的电脑上安装了sql2005和sql2008,问题就在于我用sql2008的SQL Server Management Studio工具打开的是sql2005的实例.用SELECT @@VERSION语句就可以查看当前的实例版本号. 例如以下图. 所以终于的解决方式就是,仅仅要保证连接实例所在的版本大于等于要还原的数据库的版本.就可以还原成功.

SQLSERVER2012数据库还原

(1)还原已存在数据库 还原时提示失败,因为数据库正在使用,无法获得独占访问权.解决办法,先分离已存在的数据库,再执行还原操作. 确定后居然成功了,因为我是先使用(2)还原数据库后直接尝试(1)方法还原数据库,此时数据库不存在正在被使用的情况,所以成功了.如果出现不成功,可以先将数据库分离后再按(2)方法进行还原.或者先将正在被使用的情况处理掉再执行方法(1)还原. (2)还原成新的数据库 还原时可以不用先建立一个空数据库,直接还原成新数据库.步骤如下: