【www.bbyears.com--Mssql】
加MS SQL SERVER数据库的时候,有时候会遇到9003,或者9004的错误,通常都是日志文件和数据文件不匹配造成的。有备份直接还原备份文件是最好的。如果没有备份,处理这个问题也还是比较简单。对于附加没有日志文件的数据库,这个方法也同样适用。
大致的思路是:
创建一个同名数据库
停止SQL服务
覆盖MDF文件并删除日志文件,然后启动SQL服务
将数据库从质疑模式修改为单用户紧急模式
适用DBCC CHECKDB工具修复
下面就说一些具体操作的细节。第1、2、3步就不用多说了,我们从第四步开始,假设我们有一个名为testdb的数据库附加的时候报错。
第三步,覆盖文件,重启SQL服务之后,数据库会是“置疑”状态,新建查询,执行以下SQL语句,
USE MASTER
GO
exec sp_configure "allow updates",1
GO
reconfigure with override
GO
ALTER DATABASE testdb
SET SINGLE_USER
WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABAS "testdb" SET EMERGENCY
GO
执行完成之后,再执行以下查询修复数据库:
DBCC CHECKDB ("testdb" ,REPAIR_ALLOW_DATA_LOSS)
然后执行下面的SQL语句,将数据库联机就好。
ALTER DATABASE testdb
SET MULTI_USER
WITH ROLLBACK IMMEDIATE;
GO
ALTER DATABASE testdb SET ONLINE