MS SQL server2000 数据库置疑修复方法
最近遇到系统重装,原来的数据库不能用了,就到网上查找方法,现将过程总结如下。
一、网上流传的分离数据库再附加的办法,试过了,不成功
二、自己实验:
1.新建一个同名的数据库learnter
2.再停掉sql server,操作为在(local)右键,选择 停止
3.复制旧数据库的文件覆盖掉这个新建的learnter数据库
4.再重新启动并连接sql server,在(local)右击选择操作
5.此时打开企业管理器时新建的同名数据库会出现置疑。
6.打开SQL查询分析器,执行下面的语句(注意修改其中的数据库名learnter为你自己的数据库名)。
USE MASTER
执行查询
SP_CONFIGURE ‘ALLOW UPDATES’,1 RECONFIGURE WITH OVERRIDE
/* 如果直接复制这里的语句,请修改单引号
执行查询
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME=’Learnter’
执行查询
/* 事例中的引号注意修改
sp_dboption ‘learnter’, ’single user’, ‘true’
/* 如果遇到报无法打开数据库 ‘learnter’,因为该数据库的版本(611)晚于当前服务器版本(539)。表示曾升级SQL2000到SQL2005过。那就安装SQL2005再备份数据库,再导入SQL2000。只在SQL2000里操作的办法还没找到。
/* 如果报未能在 sysindexes 中找到数据库 ID 7 中对象 ID 1 的索引 ID 1 对应的行。请对 sysindexes 运行 DBCC CHECKTABLE。请执行查询:dbcc checktable(’sysindexes’)
执行查询
DBCC CHECKDB(’learnter’)
执行查询
update sysdatabases set status =28 where name=learnter
执行查询
sp_configure allow updates, 0 reconfigure with override
执行查询
sp_dboption learnter, single user, false
执行查询
7创建新数据库,然后:企业管理器–右键你的数据库–所有任务–导出数据
–目标标数据库选择新建
–选择”在两个sql数据库之间复制对象和数据”
–把”包含扩展属性”选上,其他的根据需要选择
–最后完成























