当前位置: 代码迷 >> Sql Server >> SQLServer2005附加.MDF文件出错 :SQL Server 检测到基于一致性的逻辑 I/O 异常 页撕裂
  详细解决方案

SQLServer2005附加.MDF文件出错 :SQL Server 检测到基于一致性的逻辑 I/O 异常 页撕裂

热度:99   发布时间:2016-04-24 18:28:42.0
SQLServer2005附加.MDF文件出错 :SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂
本帖最后由 profit_2009 于 2014-02-28 16:00:22 编辑
今天在SQLServer2005上附加.mdf文件的时候提示SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂。不知道如何解决,请各位高手帮忙指点一下。报错相信如下图


------解决方案--------------------
1。停掉sql server服务
2。拷贝数据文件到其它实例
3。附加数据文件到新的实例
 此应能附加上并自动生成新的日志文件,
 如果不行则数据文件有问题,先不要动原库,贴出错误讯息,根据错误讯息考虑是否进行下一步,
 下一步的动作会比较麻烦。

1.将原库设为紧急模式,并转移先数据后重新建库
2.在另一实例上建同名资料库,停掉新的数据库,用原数据文件和日志文件覆盖新的数据库,在开启数据库,对数据库进行修复,并重建日志文件,
------解决方案--------------------
这个可以:

1.创建一个新的数据库,这个数据库的名称 和 你要附加的数据库的名称和路径一样

2.停止服务,把你要附加的数据文件和日志文件,替换刚才新建的数据库的文件

3.启动服务

4.运行:
dbcc checkdb(数据库名称,REPAIR_ALLOW_DATA_LOSS)
------解决方案--------------------
引用:
Quote: 引用:

这个可以:

1.创建一个新的数据库,这个数据库的名称 和 你要附加的数据库的名称和路径一样

2.停止服务,把你要附加的数据文件和日志文件,替换刚才新建的数据库的文件

3.启动服务

4.运行:
dbcc checkdb(数据库名称,REPAIR_ALLOW_DATA_LOSS)



按照您的方法执行了一下,从昨天执行完就一直显示的是正在恢复,到今天早上我看的时候还是正在恢复,请问我该如何操作。
我刚才用如下操作了一下,报错如下:
restore  database [数据库名字] with norecovery  操作完报错
消息 3101,级别 16,状态 1,第 1 行
因为数据库正在使用,所以无法获得对数据库的独占访问权。
消息 3013,级别 16,状态 1,第 1 行
RESTORE DATABASE 正在异常终止。






这个不能用:
restore  database [数据库名字] with norecovery  

这个命令,这个命令是用备份进行还原时的命令。

你有qq不,方便的话,帮你看看
  相关解决方案