当前位置:首页 > 系统运维 > 正文内容

SQL Server置疑的产生原因与解决

a8116255316年前 (2010-07-23)系统运维6

文章主要描述的是sql数据库置疑之SQL Server置疑的正确解决,以及对SQL Server置疑的产生原因,以及对其在实际操作中出现的一些错误现象的具体描述,以下就是文章的主要内容的详细解析。

办法

原因:

通常这个问题是由于硬盘空间不够或硬盘读写错误造成的。

现象:

数据库后面有“SQL Server置疑”字样,查看系统事务日记出现以下错误:

错误1---------------------------------------------

错误: 823,严重度: 24,状态: 2

I/O error 23(数据错误 (循环冗余检查)。) detected during read at offset 0x00000000200000 in file

'C:Program FilesMicrosoft SQL ServerMSSQLDataJiapei_Data.MDF'.

错误2---------------------------------------------

错误: 3313,严重度: 21,状态: 2

恢复数据库 'Jiapei' 的日志中记录的操作时出错。出错位置在日志记录 ID (274:377:2)。

错误3---------------------------------------------

错误: 3313,严重度: 21,状态: 2

Error while redoing logged operation in database 'Jiapei'. Error at log record ID (274:377:2).

数据库可以分离,但分离后无法附加,附加时出现“823”号错误。

程序突然连接不数据库了,开企业管理器发现数据库SQL Server置疑!!!重启数据库后该数据库又找不到了.

解决 *** :

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='置疑的同名数据库名' Go  sp_dboption '置疑的同名数据库名', 'single user', 'true'  Go  DBCC CHECKDB('置疑的同名数据库名')  Go  update sysdatabases set status =28 where name='置疑的同名数据库名' Go  sp_configure 'allow updates', 0 reconfigure with override  Go  sp_dboption '置疑的同名数据库名', 'single user', 'true'  Go 

6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用

数据库的脚本创建一个新的数据库,并将数据导进去就行了.

外一篇:

1、新建一同名数据库(文件名,文件组都和原来的一样),然后停止数据库服务,用原来文件替换新建的数

据库文件,启动数据库,该数据库被设为suspect

2、把数据库改成紧急模式:

sp_configure 'allow', 1  reconfigure with override  update sysdatabases set status = 32768 where name = '数据库名' 

3、把LDF文件改名,再执行

DBCC REBUILD_LOG ('数据库名', 'E:fdzzdatabasefdzz1204_Log.LDF' )

4、恢复数据库紧急模式

update sysdatabases set status = 0 where name = '数据库名'

执行

restore database 数据库名 WITH RECOVERY  sp_configure 'allow', 0  reconfigure with override 

5、然后用DBCC CHECKDB ('数据库名')看看有没有错误

6、假如上面还是不行,试试吧数据库设为紧急模式,应该可以看到数据了,在把数据导出到一个新的数据库

其他有用的操作:

/*--重置SQL Server置疑状态

1.系统 *** :

假如 SQL Server 因为磁盘驱动器不再有可用空间,而不能完成数据库的恢复,

那么 microsoft SQL Server 2000 会返回错误 1105

并且将 sysdatabases 中的 status 列设为置疑。按下面的步骤解决这个问题:

执行 sp_resetstatus。

语法为:

sp_resetstatus '数据库名'

用 alter database 向数据库添加一个数据文件或日志文件。

停止并重新启动 SQL Server。

用新的数据文件或日志文件所提供的额外空间,SQL Server 应该能完成数据库的恢复。

释放磁盘空间并且重新运行恢复操作。

sp_resetstatus 关闭数据库的SQL Server置疑标志,但是原封不动地保持数据库的其它选项。

扫描二维码推送至手机访问。

版权声明:本文由2345好导航站长资讯发布,如需转载请注明出处。

本文链接:http://2345hao.cn/blog/index.php/post/22232.html

分享给朋友:

“SQL Server置疑的产生原因与解决” 的相关文章

windows 7鼠标停顿怎么办?windows 7 usb鼠标停顿的原因以及解决

windows 7鼠标停顿怎么办?windows 7 usb鼠标停顿的原因以及解决

很多使用Windows 7系统的朋友都想小编反应,假如暂停使用电脑,鼠标会出现停顿现象,这是怎么回事呢 该怎么解决呢 下面就和小编一起去看下Windows 7 usb鼠标停顿的解决方法吧。 由于Windows 7系统中有一项USB选择性暂停造成的。这项设置主要为了节电,当他检测到用户没有对系统进行...

windows 7系统如何设置休眠时不断网以便继续完成下载

windows 7系统如何设置休眠时不断网以便继续完成下载

在Windows 7系统的默认设置中,当Windows 7系统处于休眠状态时,会同时断网的。如此一来,无论你正在使用迅雷还是快车等下载工具,同样可以在休眠状态下继续完成下载,最大限度做到从身边的小事开始支持环保。下面我们就详细介绍操作步骤,帮助Windows 7系统用户实现这一节能目标。 首先需要...

windows 7系统的电脑发出嘟嘟嘟的声音该怎么解决?

windows 7系统的电脑发出嘟嘟嘟的声音该怎么解决?

在某些电脑中,机器内部蜂鸣器与系统的声音输出方案是相关联的,这样一来会导致当系统输出声音时,即使电脑没有连接外部音响或耳机,也会通过内置蜂鸣器发出“嘟嘟哔哔”的声音。这个问题主要出现在Windows 7电脑中,假如你的电脑恰好遇到了这样的问题,可参考下面的方法来解决: 1、在桌面“计算机”图标上右...

windows 7系统开机提示press any key to restart的故障分析及解

windows 7系统开机提示press any key to restart的故障分析及解

Windows 7 64位系统开机后提示"press any key to restart",无法进入系统了,具体现象如下所示: 故障分析: 故障的主要原因还是硬盘的问题,可以先检查是不是接触不良或坏了,进行修复或更换即可。 解决方法: 1、开机按F8不动到高级选项出现在松手,选“...

windows 7查看电脑近期使用情况确定有没有被他人使用

windows 7查看电脑近期使用情况确定有没有被他人使用

我一个朋友最近装装了Windows 7,他总感觉有人用了他的电脑,但是一直不确定,他想知道有没有人动用他的电脑,问我有没有办法 我说设置一下就行了: 启动Windows 7,在搜索栏中输入编辑组,马上就搜索到了编辑组策略,点击即可启动程序编辑组策略。依次展开组策略左侧树形列表的计算机配置/管理模...

各个都很实用:windows 7系统电脑日常小技巧

各个都很实用:windows 7系统电脑日常小技巧

在使用Windows 7的时候很多用户对于系统的很多功能并不是很了解,也正是因为这样的不了解导致很多用户在使用Win 之后并不能体验Windows 7的功能便携和强大功能,导致很多用户对于Windows 7的认识还是比较模糊,不过为了让更多的朋友了解Windows 7的特点和便携应用,今天就为大家汇...