SQL拯救置疑.pdfVIP

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SQL拯救置疑

工作中已经碰到两次这种情况了,想想还是应该把他记录下来,利人利己。 通常这个问题是由于硬盘空间不够或硬盘读写错误造成的。 问题现象: 数据库后面有 “置疑 ”字样,查看系统事务日记出现以下错误: 错误 1 错误 : 823 ,严重度 : 24 ,状态 : 2 I/O error 23( 数据错误 ( 循环冗余检查 ) 。) detected during read at offset 0x00000000200000 in file C:\Program Files\Microsoft SQL Server\MSSQL\Data\Jiapei_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”号错误。 解决方法: 1 、新建一同名数据库(文件名,文件组都和原来的一样),然后停止数据库服务,用原来文件替换新建的 数据库文件,启动数据库,该数据库被设为 suspect( 质疑 ) 2 、把数据库改成紧急模式: sp_configure allow, 1 reconfigure with override update sysdatabases set status = 32768 where name = 数据库名 3 、把 LDF 文件改名,再执行 DBCC REBUILD_LOG ( 数据库名 , E:\fdzz\database\fdzz1204_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 、如果上面还是不行, 试试吧数据库设为紧急模式,应该可以看到数据了,在把数据导出到一个新的数据 库。 其他有用的操作: /*-- 重置置疑状态 1. 系统方法 : 如果 sql server 因为磁盘驱动器不再有可用空间,而不能完成数据库的恢复, 那么 microsoft? sql server? 2000 会返回错误 1105 并且将 sysdatabases 中的 status 列设为置疑。按下面的步骤解决这个问题: 执行 sp_resetstatus 。 语法为: sp_resetstatus 数据库名 用 alter database 向数据库添加一个数据文件或日志文件。 停止并重新启动 sql server 。 用新的数据文件或日志文件所提供的额外空间, sql server 应该能完成数据库的恢复。 释放磁盘空间并且重新运行恢复操作。 sp_resetstatus 关闭数据库的置疑标志,但是原封不动地保持数据库的其它选项。 --*/ --2. 手工重置置疑状态 use master go sp_configure allow updates,1 reconfigure with override go declare @dbname varchar(30) set @dbname= 你要处理的数据库名 if @@trancount 0 print 正在进行事务处理

文档评论(0)

ligennv1314 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档