当前位置:  数据库>sqlserver

sqlserver 数据库日志备份和恢复步骤

    来源: 互联网  发布时间:2014-09-05

    本文导语:  --创建测试数据库 CREATE DATABASE Db GO --对数据库进行备份 BACKUP DATABASE Db TO DISK='c:db.bak' WITH FORMAT GO --创建测试表 CREATE TABLE Db.dbo.TB_test(ID int) --延时1秒钟,再进行后面的操作(这是由于SQL Server的时间精度最大为百分之三秒,不延时的话...

--创建测试数据库
CREATE DATABASE Db
GO
--对数据库进行备份
BACKUP DATABASE Db TO DISK='c:db.bak' WITH FORMAT
GO
--创建测试表
CREATE TABLE Db.dbo.TB_test(ID int)
--延时1秒钟,再进行后面的操作(这是由于SQL Server的时间精度最大为百分之三秒,不延时的话,可能会导致还原到时间点的操作失败)
WAITFOR DELAY '00:00:01'
GO
--假设我们现在误操作删除了 Db.dbo.TB_test 这个表
DROP TABLE Db.dbo.TB_test
--保存删除表的时间
SELECT dt=GETDATE() INTO #
GO
--在删除操作后,发现不应该删除表 Db.dbo.TB_test
--下面演示了如何恢复这个误删除的表 Db.dbo.TB_test
--首先,备份事务日志(使用事务日志才能还原到指定的时间点)
BACKUP LOG Db TO DISK='c:db_log.bak' WITH FORMAT
GO
--接下来,我们要先还原完全备份(还原日志必须在还原完全备份的基础上进行)
RESTORE DATABASE Db FROM DISK='c:db.bak' WITH REPLACE,NORECOVERY
GO
--将事务日志还原到删除操作前(这里的时间对应上面的删除时间,并比删除时间略早
DECLARE @dt datetime
SELECT @dt=DATEADD(ms,-20,dt) FROM # --获取比表被删除的时间略早的时间
RESTORE LOG Db FROM DISK='c:db_log.bak' WITH RECOVERY,STOPAT=@dt
GO
--查询一下,看表是否恢复
SELECT * FROM Db.dbo.TB_test
/*--结果:
ID
-----------
(所影响的行数为 0 行)
--*/
--测试成功
GO
--最后删除我们做的测试环境
DROP DATABASE Db
DROP TABLE #

    
 
 

您可能感兴趣的文章:

  • 设置密码保护的SqlServer数据库备份文件与恢复文件的方法
  • 数据库备份 SQLServer的备份和灾难恢复
  • SQLServer2005 按照日期自动备份的方法
  • sqlserver 自动备份所有数据库的SQL
  • sqlserver 2005定时任务计划批量文件备份脚本
  • sqlserver 手工实现差异备份的步骤
  • sqlserver备份还原数据库功能封装分享
  • SQLServer 数据库备份过程中经常遇到的九种情况
  • SQLServer 触发器 数据库进行数据备份
  • 将备份的SQLServer数据库转换为SQLite数据库操作方法
  • SQLSERVER数据库备份后无法还原的解决办法
  • SQLServer 快速备份的十种方法
  • SQLServer 2005 自动备份数据库的方法分享(附图解教程)
  • Sqlserver2000 数据库备份实例代码
  • SQLServer 2005 实现数据库同步备份 过程-结果-分析
  • 使用FORFILES命令来删除SQLServer备份的批处理
  • 自动定时备份sqlserver数据库的方法
  • sqlserver、mysql获取连接字符串步骤
  • SQLServer导出sql文件/表架构和数据操作步骤
  • sqlserver服务器验证改为混合验证模式步骤
  • 使用mongovue把sqlserver数据导入mongodb的步骤
  • win7系统安装SQLServer2000的详细步骤(图文)
  • sqlserver游标使用步骤示例(创建游标 关闭游标)
  • 利用脚本自动安装SQLServer的实现步骤分析
  • SQLSERVER数据库升级脚本图文步骤
  • SQLServer 2000 数据库同步详细步骤[两台服务器]
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 连接sqlserver的url是jdbc:microsoft:sqlserver://192.168.0.100:1433,他连那一个数据库呢?
  • (100分)用Microsoft jdbc Driver for sqlserver2000(type4)访问sqlserver2k的问题,help!
  • 通过SQLSERVER重启SQLSERVER服务和计算机的方法
  • 怎样用文JDBC for sqlserver访问SQLSERVER 数据库请大侠给出一个完整的程序代码
  • (100分)jdbc连接sqlserver 200出错.[SQLServer 2000 Driver for JDBC]Error establishing socket.
  • 如何连接sqlserver2000数据库
  • 深入JDBC sqlserver连接写法的详解
  • how to 连接到sqlserver2000?
  • 请问如何直接sqlserver?
  • SQLServer JDBC Driver
  • unix/linux知识 iis7站长之家
  • 如何使用JSP 连接SQLSERVER数据库,请不吝赐教!(在线等,急救!)
  • 简单实现SQLServer转MYSQL的方法
  • 求助!SQLServer2000 JDBC Driver 不能加载?
  • Resin+Jsp+Sqlserver2000的问题!在线等候!
  • applet用jdbc链接SQLServer 2000的问题
  • 请问连接SQLServer 的驱动器是什么呢?
  • jdbc:microsoft:sqlserver://localhost:1433;DatabaseNameOPTIONAL=webmail???
  • 如何用SQLServer2k-JDBC连接数据库?
  • shell脚本读取rrd文件将数据插入sqlserver数据库中


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3