`
feiliboos
  • 浏览: 665832 次
文章分类
社区版块
存档分类
最新评论

如何恢复丢失的SQL Server日志?

 
阅读更多

  当数据库的主数据MDF文件完好无损时,在丢失了LDF文件的情况下,如何利用MDF文件恢复数据库?我们把SQL Server的日志文件分为两类:一类是无活动事务的日志,另一类是含活动事务的日志,根据不同的日志,采取不同的方法来恢复数据库。

  1. 无活动事务的日志恢复

  无活动事务的日志丢失时,我们很容易利用MDF文件直接恢复数据库,具体方法如下:

  ①.分离被质疑的数据库,可用企业管理器中的"分离数据库工具",或者用存储过程sp_detach_db分离数据库;

  ②利用MDF文件附加数据库生成新的日志文件,可用企业管理器中的"附加数据库"的工具,或者用存储过程sp_attach_single_file_db附加数据库。

  如果数据库的日志文件中含有活动事务,利用此方法就不能恢复数据库。

  2. 含活动事务的日志恢复

  含有活动事务的日志丢失时,利用上述方法就会出现"数据库和日志文件不符合,不能附加数据库"。对于这种情况下,我们采用如下方法:

  ①新建同名数据库SSS,并设它为紧急模式

  ·停止SQL Server服务器;

  ·把数据库主数据MDF文件移走;

  ·启SQL Server服务器,新建一个同名的数据库SSS;

  ·停止SQL Server服务器,把移走的MDF文件再覆盖回来;

  ·启动SQL Server服务器,把SSS设为紧急模式,不过默认情况下,系统表是不能随便修改的,必须首先设置一下使其能被修改,运行以下语句即可:

Use Master
Go
sp_configure ’allow updates’,1
reconfigure with override
Go

  接着运行以下语句,把SSS数据库设为紧急模式,即把MYDATA表中SSS数据库的status属性设为’37268’,就表示把SSS数据库处于紧急模式。

update MYDATA set status=32768 where hame=’SSS’

  如果没有报告什么错误,就可以进行以下操作。

  ②设置数据库SSS为单用户模式,并检查数据库

  ·重启SQL Server服务器;

  ·把数据库SSS设为单用户模式

Sp_dboption ’SSS’, ’single user’, ’true’

  ·运行以下语句,检查数据库SSS

DBCC CHECKDB(’SSS’)

  如果没有什么大的问题就可以把数据库的状态改回去。

  ③还原数据库的状态

  运行以下语句,就可以把数据库的状态还原:

update MYDATA set status=28 where name=’SSS’
sp_configure ’allow updates’,0
reconfigure with override
Go

  如果没有什么大的问题,刷新一下数据库,数据库SSS又会出现在你面前,但目前恢复工作还没有做完,此时的数据库仍不能工作,还要进行下面的处理,才能真正恢复。

  ④利用DTS的导入导出向导,把数据库SSS导入到一个新建数据库BBB中

  ·新建一个数据库BBB;

  ·右击BBB,选择IMPORT功能,打开导入向导;

  ·目标源选择"在SQL Server数据库之间复制对象和数据库",这样可以把表结构,数据视图和存储过程导入到BBB中

  ·再用此功能把BBB库替换成原来的SSS库即可。

  数据库SSS就完全恢复。

分享到:
评论

相关推荐

    Log Explorer 4.2 MSSQL数据库日志查看及数据恢复工具

    支持SQLServer7.0和SQLServer2000,提取标准数据库的日志文件或者备份文件中的信息。 问:数据库表中的全部记录删除,事先没有备份数据库,如何使用日志文件对该数据库进行恢复? 答:建议用LOG EXPLORER来恢复,...

    Microsoft SQL Server 2005 Express Edition SP3

    如果在安装完 SQL Server Express 之后更改服务器的角色,便会导致功能丢失,不支持这样做。 [顶部] 3.11 现有的 SQL 本机客户端安装可能导致安装失败 安装可能失败并回滚,同时显示以下错误消息:“找不到产品 ...

    SQL Server无日志恢复数据库(2种方法)

    SQL Server数据库中的日志文件可能会由于一些突发事件或者失误造成丢失的严重后果,大家都知道,SQL Server数据库中日志文件是很重要的,所以要及时的将丢失的日志文件给找回来。下文就为大家介绍一种恢复数据库日志...

    SQL Server 2008管理员必备指南(超高清PDF)Part3

    14.3.3 检查SQL Server代理事件日志 14.4 监视SQL Server的性能 14.4.1 选择要监视的计数器 14.4.2 创建性能日志 14.4.3 查看数据收集器报告 14.4.4 配置性能计数器警报 14.5 配置管理数据仓库 14.5.1 了解管理数据...

    SQL Server 2008管理员必备指南(超高清PDF)Part1

    14.3.3 检查SQL Server代理事件日志 14.4 监视SQL Server的性能 14.4.1 选择要监视的计数器 14.4.2 创建性能日志 14.4.3 查看数据收集器报告 14.4.4 配置性能计数器警报 14.5 配置管理数据仓库 14.5.1 了解管理数据...

    SQL Server 2008管理员必备指南(超高清PDF)Part2

    14.3.3 检查SQL Server代理事件日志 14.4 监视SQL Server的性能 14.4.1 选择要监视的计数器 14.4.2 创建性能日志 14.4.3 查看数据收集器报告 14.4.4 配置性能计数器警报 14.5 配置管理数据仓库 14.5.1 了解管理数据...

    Log Explorer for SQL Server v4.22 含注册机

    否则SQLServer将已循环的方式来覆盖先前的日志记录,将会导致LogExplore无法恢复错误. 数据恢复介绍 LogExplore允许你恢复应为误操作或者程序错误而导致的数据丢失或者更改.比如执行update\Delete语句时丢失了where...

    SQL Server中如何在日志文件丢失时恢复数据库.pdf

    SQL Server中如何在日志文件丢失时恢复数据库.pdf

    SQL.Server.2008管理员必备指南.part2.rar(2/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    SQL.Server.2008管理员必备指南.part1.rar(1/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    SQLServer2008查询性能优化 2/2

    书名: SQLServer2008查询性能优化 作者: 弗里奇(Grant Fritchey) 出版社: 人民邮电出版社 出版日期: 2010年8月1日 ISBN: 9787115230294 编辑推荐 《SQL Server 2008查询性能优化》为你提供了处理查询性能所...

    SQLServer2008查询性能优化 1/2

    书名: SQLServer2008查询性能优化 作者: 弗里奇(Grant Fritchey) 出版社: 人民邮电出版社 出版日期: 2010年8月1日 ISBN: 9787115230294 编辑推荐 《SQL Server 2008查询性能优化》为你提供了处理查询性能所...

    赤兔SQL Server数据库恢复软件 v14.4.zip

    赤兔SQL Server数据库恢复软件可以处理微软SQL数据库丢失,数据库损坏,数据库备份损坏,数据库日志损坏等故障下的数据恢复。 赤兔SQL Server数据库恢复软件功能: 1、去掉了之前老版本的页面分析和碎片分析的界面,...

    SQL.Server.2008管理员必备指南.part4.rar(4/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    ApexSQLLog2014 sql数据库日志恢复工具

    ApexSQL Log是为数据库开发用户打造的一款实用误操作恢复工具,软件可以帮助用户阅读SQL事务日志以审核更改和回滚事务,可以有效地找回丢失或者修改的数据库数据,支持SQL Server 2008、2005等版本

    Log Explorer for SQL Server v4.22

    否则SQLServer将已循环的方式来覆盖先前的日志记录,将会导致LogExplore无法恢复错误. 数据恢复介绍 LogExplore允许你恢复应为误操作或者程序错误而导致的数据丢失或者更改.比如执行update\Delete语句时丢失了...

    SQL.Server.2008管理员必备指南.part3.rar(3/4)

     SQL Server专家的呕心力作,数据库管理员的实战宝典,全面、深入地剖析SQL Server2008新特性,结构独特,实例丰富,操作性强。 编辑本段 目录  第Ⅰ部分 SQL Server 2008管理基础  第1章 SQL Server 2008管理...

    SQL Server 压缩日志与减少SQL Server 文件大小的方法

    第6步如果日志达到上限,则以后的数据库处理会失败,在清理日志后才能恢复。  1.清空日志  DUMP TRANSACTION 库名 WITH NO_LOG  2.截断事务日志  BACKUP LOG 数据库名 WITH NO_LOG  3.收缩数据库文件  (如果不...

    SQL Server数据库文件常见问题

    可以执行下面的查询语句:SELECT * FROM sysfiles如果可能,你希望将数据文件和事务log文件存放到RAID磁盘阵列中,此时能提供数据冗余,即使在磁盘失效的情况下,也不会丢失数据。数据库系统的数据文件和事务log文件...

    LogExplorer4.2 For sql server使用教程

    Log Explorer主要用于对MSSQLServer的事务分析和数据恢复。可以浏览日志、导出数据、恢复被修改或者删除的数据(包括执行过update,delete,drop和truncate语句的表格)。一旦由于系统故障或者人为因素导致数据丢失

Global site tag (gtag.js) - Google Analytics