先使用“无日志附加”的方法进行附加数据后,对数据库做DBCC检测,然后针对错误进行修复
。一般如果数据库正在进行读写 *** 作,突然断电,会导致数据库无法回写正常的数据,这样就会导致数据库索引及其它错误,常见的有“并闫锁页错误”、“表错误:
分配单元ID
169144,页(1:XXXX)。测试(IS_OFF
(BUF_IOERR,
pBUF->bstat))失败。”,可以先用DBCC先进行修复
,命令:
DBCC
CHECKDB(DBName,REPAIR_FAST)
--不丢失数据
DBCC
CHECKDB(DBName,REPAIR_REBUILD)--不丢失数据
DBCC
CHECKDB(DBName,REPAIR_ALLOW_DATA_LOSS)--会丢失数据
如果还是修复不好,就找专业的数据恢复公司做修复吧,可以找北亚数据恢复修复
,他们修复SQL数据库很厉害。。。
原因:非正常程序中断或错误结束SQL服务,都会导致MSDB数据库被“置疑”。
Msdb 数据库供SQLServer 代理程序调度警报和作业以及记录 *** 作员时使用。比如,我们备份了一个数据库,会在表backupfile中插入一条记录,以记录相关的备份信息。
但因为Msdb数据库并未存储特别重要的信息,因此可以从别的机器拷贝一份相同的msdbdatamdf和msdblogldf覆盖掉即可。
解决步骤
A服务器为被“置疑”的服务器;B服务器上装有和A服务器相同版本的数据库软件。版本是SQL SERVER 2000。
步骤1、停止B服务器上的SQL SERVER 服务,拷贝“msdbdatamdf”和“msdblogldf”文件。
步骤2、停止A服务器上的SQL SERVER 服务,将从B服务器上拷贝“msdbdatamdf”和“msdblogldf”文件覆盖掉A服务器上的这两个文件。
步骤3、重新启动A服务器上的SQL SERVER服务。
步骤4、如果MSDB数据库仍然是置疑状态,可以执行下面的SQL。
USE MASTERGO
SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
GO
UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='msdb'
Go
sp_dboption 'msdb', 'single user', 'true'
Go
DBCC CHECKDB('msdb')
Go
update sysdatabases set status =28 where name='msdb'
Go
sp_configure 'allow updates', 0 reconfigure with override
Go
sp_dboption 'msdb', 'single user', 'false'
Go
sql2000数据库经常置疑,并且按照网上所说的只能暂时解决问题!在不重装软件和系统的情况下可不可以一次性解决这个问题?估计是我不小心硬关机造成的!请各位能提个有效的建议,尽量详细和易懂!!!
企业管理器--右键suspect的数据库--所有任务--分离数据库
然后备份你的suspect数据库的文件,再按下面的步骤处理:
1新建一个同名的数据库
2再停掉sql server
3用suspect数据库的文件覆盖掉这个新建的同名数据库
4再重启sql server
5此时打开企业管理器时新建的同名数据库会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)
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
6完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了
如果这样改不加数据库状态,你就把数据库导成一个新库来代替旧库吧
企业管理器--右键你的数据库--所有任务--导出数据
--目标标数据库选择新建
--选择"在两个sql数据库之间复制对象和数据"
--把"包含扩展属性"选上,其他的根据需要选择
--最后完成
以上就是关于sql数据库置疑 data里找不到该数据库的数据 怎么办全部的内容,包括:sql数据库置疑 data里找不到该数据库的数据 怎么办、SQL2000数据库msdb质疑怎么处理、sql2000数据库经常置疑怎么处理等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)