sql数据库置疑 data里找不到该数据库的数据 怎么办

sql数据库置疑 data里找不到该数据库的数据 怎么办,第1张

先使用“无日志附加”的方法进行附加数据后,对数据库做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 MASTER 

GO 

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数据库经常置疑怎么处理等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9268352.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-26
下一篇 2023-04-26

发表评论

登录后才能评论

评论列表(0条)

保存