通过日志恢复MS SQL数据案例

转载 2007年10月13日 00:33:00
作者: 老三 出处:blog.51cto.com 
阅读提示:本文介绍通过日志恢复MS SQL数据案例,以数据库的故障恢复改为非简单模式,去掉自动关闭和自动收缩两个选项为前提。

前提条件是数据库的故障恢复改为非简单模式,去掉自动关闭和自动收缩两个选项。

1、创建一个数据库test 创建时间为2006-11-18 09:40

2、对数据库进行备份,备份时间为2006-11-18 09:42

语句如下:
backup database test to disk='d:/database/test.bak' with init

提示:
已处理 216 页,这些页属于数据库 'test' 的文件 'test'(位于文件 1 上)。
已处理 1 页,这些页属于数据库 'test' 的文件 'test_log'(位于文件 1 上)。
BACKUP DATABASE 操作成功地处理了 217 页,花费了 0.191 秒(9.269 MB/秒)。

3、2006-11-18 09:44 对数据库进行操作删除和新增,我这边对客户资料进行删除和新增操作

原始的记录为

修改完后的记录为

下面开始还原操作

4、备分日志:现在时间是2006-11-18 09:47

语句如下:
BACKUP LOG test TO DISK='d:/database/0611180947.logs' WITH INIT

提示:
已处理 4 页,这些页属于数据库 'test' 的文件 'test_log'(位于文件 1 上)。
BACKUP LOG 操作成功地处理了 4 页,花费了 0.104 秒(0.275 MB/秒)。

5、恢复之前数据库备份文件test.bak,使用WITH NORECOVERY参数:

RESTORE DATABASE test from disk='d:/database/test.bak' WITH NORECOVERY

提示:

已处理 216 页,这些页属于数据库 'test' 的文件 'test'(位于文件 1 上)。
已处理 1 页,这些页属于数据库 'test' 的文件 'test_log'(位于文件 1 上)。
RESTORE DATABASE 操作成功地处理了 217 页,花费了 0.352 秒(5.029 MB/秒)。

6、使用日志恢复数据库到时间为2006-11-18 09:43,即恢复09:44分的删除和新增操作

RESTORE LOG test FROM disk='d:/database/0611180947.logs' WITH RECOVERY,STOPAT='11/18/2006 09:43'

提示:

已处理 4 页,这些页属于数据库 'test' 的文件 'test_log'(位于文件 1 上)。
RESTORE LOG 操作成功地处理了 4 页,花费了 0.016 秒(1.792 MB/秒)。

至此,再进入到软件中,可以看到,数据已经还原到原来的状态了

 

 

SQLServer 2008以上误操作数据库恢复方法——日志尾部备份

原文出处:http://blog.csdn.net/dba_huangzj/article/details/8491327问题:         经常看到有人误删数据,或者误操作,特别是update和...
  • DBA_Huangzj
  • DBA_Huangzj
  • 2013年01月10日 20:48
  • 97138

SQL SERVER 2008R2从日志中恢复Delete数据

【用户单位】     北京某公司  【数据恢复故障描述】     用户有两个SQLSERVER 2008R2数据库,其中一个是测试库,另一个是生产库,DBA在做操作,误把生产库中的一张表做了Delet...
  • mycshomes
  • mycshomes
  • 2014年03月28日 21:45
  • 1844

SQL只有MDF文件的恢复--SQL无日志LDF文件的恢复(图解)

SQL只有MDF文件的恢复--SQL无日志LDF文件的恢复 SQL Server是一个关系数据库管理系统,在进行SQL Server数据库操作的过程中难免会出现误删或者别的原因引起的日志损坏,由...
  • tyczp
  • tyczp
  • 2017年05月06日 12:41
  • 252

SQL2008根据日志还原数据库

本功能偶自己亲自用过.所以可以确保好用.但偶只是处理这一个问题,如果各位还有什么不同意见或补充,请给我留言,我再测试更新本文,   我们在操作数据库是,难免有些误操作,如果无法恢复,将会给我们造成...
  • lsgis2001
  • lsgis2001
  • 2013年03月08日 20:59
  • 6387

SQLServer 2008以上误操作数据库恢复方法——日志尾部备份

转自http://blog.csdn.net/dba_huangzj/article/details/8491327 原文出处:http://blog.csdn.net/dba_huangz...
  • peng_bin1989
  • peng_bin1989
  • 2016年07月19日 10:56
  • 858

MS SQL 日志记录管理

日志记录分类 按日志文件查看器,习惯将错误日志归为SQL SERVER、 SQL SERVER 代理, Windows应用程序日志,数据库邮件等四类错误日志记录。如果还考虑维护计划、远程维护计划...
  • saga_gallon
  • saga_gallon
  • 2017年01月05日 10:06
  • 1020

sql根据日志回滚(摘抄于百度)

SQL:回滚事务日志文件中的事务 问:怎样使用Transact-SQL回滚某个位于事务日志文件中的事务(例如,ID 0000:0010a183)? 答:出于预防数据错误的考虑,SQL Server...
  • yangchun430
  • yangchun430
  • 2014年05月21日 14:09
  • 1595

SQLSERVER2012误删数据恢复过程

由于长时间从事企业应用系统开发,前往用户现场升级、调试系统是比较常做的事情,但是就在周一,由于同事的失误在毫无知觉的情况下误删了生产数据库几乎所有的数据。当我发现的那一刻,感觉头发都立起来了,心想这他...
  • xwnxwn
  • xwnxwn
  • 2016年12月09日 13:29
  • 5470

sql server 2000里ldf损坏,只有mdf的恢复

最近遇到了一个sql server 2000文件,ldf损坏了,但mdf还在,于是想办法恢复之,网上找到了些方法,现小结之 1) 先及时把原来的数据库文件(如test.mdf)备份到其他地方2) 停掉...
  • cmzsteven
  • cmzsteven
  • 2015年10月11日 16:59
  • 521

mysql恢复数据库方法binlog日志来恢复数据库

在使用binlog日志来恢复数据库之前,我们有一些前提工作需要做。步骤如下: 1、创建新的数据库ailanni 2、创建新的表ilannitable 3、向表ilannitable插...
  • lzq123_1
  • lzq123_1
  • 2014年11月19日 14:57
  • 3160
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:通过日志恢复MS SQL数据案例
举报原因:
原因补充:

(最多只允许输入30个字)