DataBase异常状态:Recovery Pending,Suspect

场景:在勤哲Excel服务器软件的使用过程中,有时候会遇到登录不了系统或es服务根本启动不了这样的情况。

分析:通过查看es日志文件或根据报错提示,进sql后台,检查对应的库是否处于正常状态。

解决:Recovery Pending状态是指:数据库在还原(recovery)时遇到跟资源相关的错误,虽然数据库没有损坏,但是文件可能丢失,或者系统资源的限制,导致该数据库不能开始还原进程。数据库处于Recovery Pending状态,表明还原进程被挂起,数据库不能开始数据库的数据和日志的还原进程;这种情况下,不能说明Recovery失败,因为Recovery还没有开始,最可能的原因是丢失数据文件或日志文件。

针对Recovery Pending状态,执行以下sql语句

ALTER DATABASE ESSystem SET SINGLE_USER WITH NO_WAIT

ALTER DATABASE ESSystem SET EMERGENCY;

DBCC ( checkdb ESSystem ,REPAIR_ALLOW_DATA_LOSS )

ALTER DATABASE ESSystem SET online;

ALTER DATABASE ESSystem SET Multi_USER WITH NO_WAIT

针对Suspect状态,执行以下sql语句

USE MASTER

GO

SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGUREWITH OVERRIDE

GO

ALTER DATABASE ESSystem SET EMERGENCY

GO

sp_dboption 'ESSystem', 'single user','true'

GO

DBCCCHECKDB('ESSystem','REPAIR_ALLOW_DATA_LOSS')

GO

ALTER DATABASE ESSystem SET ONLINE

GO

sp_configure 'allow updates', 0 reconfigurewith override

GO

sp_dboption 'ESSystem', 'single user','false'

GO

‍注:ESSystem代表库名。

  • 发表于:
  • 原文链接:https://kuaibao.qq.com/s/20180907G0T3KT00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券