数据库状态变为可疑,修复后数据库页已标记为 RestorePending

数据库版本为sqlserver2008
早上公司断电,服务器启动后有一个数据库编程可疑状态无法查询,在网上搜了下,执行了以下命令

1、修改数据库为紧急模式

ALTER DATABASE jd13dafa SET EMERGENCY

2、使数据库变为单用户模式

ALTER DATABASE jd13dafa SET SINGLE_USER

3、修复数据库日志重新生成,此命令检查的分配,结构,逻辑完整性和所有数据库中的对象错误。当您指定“REPAIR_ALLOW_DATA_LOSS”作为DBCC CHECKDB命令参数,该程序将检查和修复报告的错误。但是,这些修复可能会导致一些数据丢失。

DBCC CheckDB (jd13dafa , REPAIR_ALLOW_DATA_LOSS)

4、使数据库变回为多用户模式

ALTER DATABASE jd13dafa SET MULTI_USER

在执行CheckDB时报错,然后数据库可以查询了,但是发现很多表和视图查询时报错“数据库页已标记为 RestorePending,可能表明磁盘已损坏。要从此状态恢复,请执行还原操作”

6个回答

最后把还能用的表导了出来,重新创建的数据库,唉,就这样吧

虽然我们用的oracle。但应该是一样的原因吧。
http://www.cnblogs.com/whai/p/5118646.html

yang651158
yang651158 我的那些表删除不掉,执行那些修复语句也不行
接近 3 年之前 回复

已经在执行下面的语句了,当前还有没有别的办法
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
ALTER DATABASE A_LinTaoOA SET EMERGENCY
GO
sp_dboption 'A_LinTaoOA', 'single user', 'true'
GO
DBCC CHECKDB('A_LinTaoOA','REPAIR_ALLOW_DATA_LOSS')
GO
ALTER DATABASE A_LinTaoOA SET ONLINE
GO
sp_configure 'allow updates', 0 reconfigure with override
GO
sp_dboption 'A_LinTaoOA', 'single user', 'false'
GO

http://www.bubuko.com/infodetail-1306523.html
之前也遇到过类似问题

上面给出的三个其实是一个方法,并且不好用呀

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐