2008年7月7日,星期一,数据库服务器的磁盘阵列卡坏了,硬件维护人员更换了磁盘阵列卡,但是系统的数据库文件已经损坏。用了两天的时间恢复该数据库。数据库使用的是SQLSERVER2000,数据库名是regie_sc_sj,数据库文件名regie_sc_sj_data.mdf.
问题检查过程
1、在企业管理器中专卖数据库的状态是置疑,用以下命令修复数据库状态:
USE master
GO
sp_configure 'allow updates', 1
GO
RECONFIGURE WITH OVERRIDE
GO
sp_resetstatus 'regie_sc_sj'
但是修复不成功,无法找到该数据库。检查发现数据库文件没有丢失,只是数据库文件没有连接到SQLSERVER中。
2、通过SQLSERVER的企业管理器将数据库文件附加到SQLSERVER中,也没有成功,报错为“823” 磁盘故障造成的问题。
3、将数据库文件复制到其它机器上,并且在新的机器上附加到企业管理器中,出现相同的报错。说明磁盘的故障已经损坏了数据库文件。该数据库上次备份是在2004年,时间太久已经无法使用这个备份文件,现在只能尽量恢复现有的数据库文件。
修复过程
1、在master库的sysdatabases表中添加专卖数据库信息:
Use Master
--修改系统属性,允许修改系统表的内容
sp_configure 'allow updates', 1
reconfigure with override
--添加专卖数据库信息到sysdatabases表中,其中status&