场景:在勤哲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代表库名。
领取专属 10元无门槛券
私享最新 技术干货