备份与还原
创建数据库DB_RESTORE 创建表T_1(id int,f char(10))
然后进行完全备份
BACKUP DATABASE DB_RESTORE TORESTOREDB
当上面的完全备份实现了,该数据库的日志被截断了,对吧.
然后创建表T_2(f1 int,f2 int ,f3 int)(此时会继续写LOG)
紧接着就备份日志
USE [master]
BACKUP LOG DB_RESTORE TO RESTORELOG
最后就把T_1、T_2都删除
--------------------------------------
还原完全备份:
USE [master]
RESTORE DATABASE DB_RESTORE FROM RESTOREDB
WITH NORECOVERY --后面还原日志的时候说没有用上WITH NORECOVERY
或者
USE [master]
RESTORE DATABASE DB_RESTORE FROM RESTOREDB --备份集只有1个
都失败
错误:
服务器: 消息 3101,级别 16,状态 2,行 2
因为数据库正在使用,所以未能获得对数据库的排它访问权。
服务器: 消息 3013,级别 16,状态 1,行 2
RESTORE DATABASE 操作异常终止。
将DB_RESTORE 设置为单用户模式后再执行,同样报这个错误
但使用企业管理器来还原是成功实现的,利用上面的SQL却失败--郁闷!为什么??
虽然用TSQL失败了,但总算还原过来,终于看到T_1了!!
__________________________________________________________________________
接着想把T_2也还原出来,也就是利用日志来恢复数据了
USE [master]
RESTORE LOG DB_RESTORE FROM RESTORELOG
--失败报错:
服务器: 消息 4306,级别 16,状态 1,行 2
先前的还原操作未指定 WITH NORECOVERY 或 WITH STANDBY。请在除最后步骤之外的所有其它步骤中指定 WITH NORECOVERY 或 WITH STANDBY 后,重新启动该还原序列。
服务器: 消息 3013,级别 16,状态 1,行 2
RESTORE LOG 操作异常终止。
这次使用企业管理器操作也失败,报同上的错误
----------------------------
最后请问我怎样才可以把T_2还原出来?
不使用log explorer可以吗?
------解决方案--------------------ding
------解决方案--------------------http://community.csdn.net/Expert/topic/5122/5122922.xml?temp=.1943476
http://community.csdn.net/Expert/topic/5122/5122999.xml?temp=.2519953