码迷,mamicode.com
首页 > 数据库 > 详细

sql-server 2005数据库文件恢复(检测到基于一致性的逻辑 I/O 错误)

时间:2014-07-03 18:37:04      阅读:255      评论:0      收藏:0      [点我收藏+]

标签:文件   数据   os   代码   io   数据库   

今天sql-server数据库突然报错:

SQL Server 检测到基于一致性的逻辑 I/O 错误 校验和不正确(应为: 0x7c781313,但实际为: 0x67a313c9)。在文件 ‘C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\E_BLOCK_DB.mdf‘ 中、偏移量为 0x00000000a34000 的位置对数据库 ID 5 中的页 (1:1306) 执行 读取 期间,发生了该错误。SQL Server 错误日志或系统事件日志中的其他消息可能提供了更详细信息。这是一个威胁数据库完整性的严重错误条件,必须立即纠正。请执行完整的数据库一致性检查(DBCC CHECKDB)。此错误可以由许多因素导致;有关详细信息,请参阅 SQL Server 联机丛书。

 

折腾了许久,解决方案如下:

第一步:先建立一个同名数据库,停止SQL SERVER2005,将不能打开的.mdf数据库文件和.ldf文件覆盖刚新建的f数据库的两个文件

第二步:重新启动数据库

第三步:在查询分析器中运行如下代码:

alter database 数据库名   set emergency   —将数据库设置为紧急状态

use master 

declare @databasename varchar(255) 

set @databasename=‘数据库名’         —你的.mdf文件文件名

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’—将目标数据库置为多用户状态

 

第四步:执行出现“数据库其他多个文件与数据库主文件不匹配….”错误,再执行一次即可。


sql-server 2005数据库文件恢复(检测到基于一致性的逻辑 I/O 错误),布布扣,bubuko.com

sql-server 2005数据库文件恢复(检测到基于一致性的逻辑 I/O 错误)

标签:文件   数据   os   代码   io   数据库   

原文地址:http://blog.csdn.net/wang_cel/article/details/36503459

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!