MDF文件损坏及没有日志文件恢复的总结_mdf文件怎么恢复

2020-02-27 其他工作总结 下载本文

MDF文件损坏及没有日志文件恢复的总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“mdf文件怎么恢复”。

MDF文件损坏及没有日志文件恢复的总结

大体思路是这样的:

1。重建日志

先建一个同名的数据库,并且对应的文件名也得相同,停掉数据库,然后到建立的这个数据库的目录下将对应的两个文件删除,然后把MDF拷贝到这个目录下。

启动数据库,便看到这个数据库处于置疑状态。

2。消除置疑状态 USE MASTER GO

SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE--表示可以更改系统表

GO

UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='置疑的数据库名'--设置数据库为紧急模式

Go

sp_dboption '置疑的数据库名', 'single user', 'true'--设置数据库为单用户模式

Go

DBCC CHECKDB('置疑的数据库名')

--检查数据库错误

Go

update sysdatabases set status =28 where name='置疑的数据库名'--恢复数据库为正常模式

Go

sp_configure 'allow updates', 0 reconfigure with override Go

sp_dboption '置疑的数据库名', 'single user', 'false' Go 这里是最好的恢复,MDF没有损坏,上面的语句基本可以满足

假如MDF有损坏,并且做DBCC里有N多错误,数据库无法完整修复里可以考虑允许丢失数据修复,方法如下

use master

declare @databasename varchar(255)

set @databasename='要恢复的数据库名称'

exec sp_dboption @databasename, N'single', N'true'--将目标数据库置为单用户状态

dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS)

dbcc checkdb(@databasename,REPAIR_REBUILD)

exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态

如果顺利的话,应该能解决问题。如果运气实在不好,以上搞完之后DBCC还是出现错误,那可以用终极办法

对表做允许数据丢失的修复,具体方法如下

use master

declare @databasename varchar(255)

set @databasename='要恢复的数据库名称'

exec sp_dboption @databasename, N'single', N'true'--将目标数据库置为单用户状态

exec sp_msforeachtable „DBCC CHECKTABLE(''?'',REPAIR_ALLOW_DATA_LOSS)‟

exec sp_dboption @databasename, N'single', N'false'--将目标数据库置为多用户状态

如果你的运气霉到家了,搞完上面的DBCC还是有问题,那么可以这样

把数据库导成一个新库来代替旧库

企业管理器--右键你的数据库--所有任务--导出数据--目标标数据库选择新建

--选择“在两个sql数据库之间复制对象和数据”--把“包含扩展属性”选上,其他的根据需要选择--最后完成这几步一般会出现各种各样的问题,大致有这么几种

1。出现“未能在数据库 'approve_new' 中运行 BEGIN TRANSACTION,因为该数据库处于回避恢复模式。sp_dboption 命令失败。”

出现这样问题的解决: 将数据库分离后再附加(或者重启数据库服务)2。由于文件不可访问,或者内存或磁盘空间不足,所以无法打开数据库 'approve_new'。详细信息请参阅 SQL Server 错误日志。

1)在查询分析器里执行如下语句

sp_configure 'allow updates', 1 go reconfigure with override go use master go update sysdatabases set status = 32768 where name = 'UFDATA_003_2006' go sp_configure 'allow updates', 0 go reconfigure with override

2)再在查询分析器里执行如下语句 use master dbcc rebuild_log('数据库名', '日志物理路径')--重建日志

3dsmax文件损坏如何解决恢复?

3dsmax文件损坏如何解决恢复? 来源:王蛟[点击放大]我们有时候在开启3dsmax文件的时候,或者在使用中突然停电导致文件未能正确保持,以至于文件不能打开失败错误等待,这些都会让人......

mdf是什么文件 mdf文件有什么用

mdf是什么文件 mdf文件有什么用(共6篇)由网友“canss”投稿提供,下面是小编帮大家整理后的mdf是什么文件 mdf文件有什么用,希望对大家带来帮助,欢迎大家分享。篇1:如何打开mdf文件......

怎么恢复U盘里损坏的文件?

U盘里的文件损坏怎么恢复?要说我们公司啊,最坑爹的就是会计和采购,每次申请个啥东西都得费半天劲,还不一定能给你。就拿我们公司给配的u盘来说吧!啥玩意啊,要么就是最便宜的,要么就......

U盘传输文件失败造成文件损坏如何恢复?

U盘传输文件失败造成文件损坏怎么恢复? U盘传输文件之所以会失败,我也是知道原因的,文件太大了,传输的时间过长,有时候就容易造成数据传输的中断,进而失败,但是文件会被损坏,这可是......

如何恢复误删文件

如何恢复误删文件(共5篇)由网友“绝美金花子”投稿提供,下面是小编给大家带来关于如何恢复误删文件,一起来看看吧,希望对您有所帮助。篇1:如何恢复误删文件 不小心,删错了,还把回收......

《MDF文件损坏及没有日志文件恢复的总结.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
MDF文件损坏及没有日志文件恢复的总结
点击下载文档
相关专题 mdf文件怎么恢复 文件 日志 MDF mdf文件怎么恢复 文件 日志 MDF
[其他工作总结]相关推荐
[其他工作总结]热门文章
下载全文