客户是一家超市,客户在使用sql server数据库的过程中忽然遇到断电的问题,在客户重启客户端后发现无法连接到数据库,将数据库分离后重新附加数据库,提示错误823,面对这个问题,该用户无法解决,对于这方面的故障,大家要如何进行解决呢?
为什么会出现823错误,其实这个823就是数据库物理页面损坏,有时可能是页面有但是校验值损坏,导致无法识别该页面,有时因为断电或者文件系统问题出现页面丢失也会报这个823错误,针对823错误,大家可以尝试下面的解决方法。
在sql server企业管理器中,新建同名数据库xx后,停止数据库,把损坏的数据库文件xx.mdf和xx_log.ldf覆盖刚才新建数据库目录下 的xx.mdf和xx_log.ldf,同时删除xx_log.ldf,启动数据库服务,发现数据库名xx后面有“质疑”字样,打开sql自带查询分析器,分别执行如下sql语句:
USE MASTER
GO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='his222'
Go
sp_dboption 'test', 'single user', 'true'
Go
DBCC CHECKDB('test')
Go
update sysdatabases set status =28 where name='test'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption 'test', 'single user', 'false'
Go
按照此方法操作,数据库应当能正常访问了,如果还存在问题,最笨的方法就是建立一个新库,把原来数据库中的各个表的数据导出到新建的数据库表中。
如果用户用此方法修复不成功或者感觉此方法没有作用,也可以咨询数据库修复中心。
【数据恢复服务承诺】
1. 免费检测,免费咨询,免费售后服务
2. 与客户签订保密协议,对客户的数据严格保密
3. 数据恢复不成功不收费
4. 专业工程师提供服务
5. 数据恢复前报价,客户确认后工程师开始数据修复
6. 整个恢复过程不会对客户的原盘有任何的写操作,以确保原盘的数据完全
重要提醒:
在企业数据库进行维护时要进行备份并且要及时对电闸电路进行排查可能的问题,建议最好复制完整的MDF,LDF文件。并且一旦发生问题,一定要及时联系专业数据恢复的机构,可以尽量减少数据的丢失。