• 数据库sql2000错误8908及处理


    错误8908:表错误:数据库ID34,对象ID3,索引ID0。链的链接不匹配。(1:9342)->next   =   (1:1808),但(1:1808)->prev   =   (1:1351)。   
    (在数据库‘UlandSystem’(34)中。

    解释   
      当   Microsoft®   SQL   Server  在与表关联的一个页链的页链接中检测到不一致时(例如当某页的   next   指针指向一页,而该页的   previous   指针却向回指向另一页时),会出现该错误。表数据具有一个双向链接页链,每个索引级别也具有一个这样的页链。   
        
    对策   
      通过检查错误信息中的   current   page   确定损坏的表。执行不带修复子句的   DBCC   CHECKDB   以确定损坏的程度。然后,执行带有适当修复子句的   DBCC   CHECKDB   以修复损坏部分。如果该页与索引相关联,有时除去索引可能解决问题。在多数情况下,必须从已知的干净备份恢复数据库。   
        
      如果错误涉及索引页,请使用   REPAIR_REBUILD   子句。如果错误涉及数据页,可能需要使用   REPAIR_ALLOW_DATA_LOSS   子句。在不允许丢失数据的可能事件中,将需要从已知的干净备份进行还原。如果问题仍然存在,请与您的主要支持提供者联系。使   DBCC   CHECKDB   的输出可查阅。   
           
    重要    

    如果执行带有修复子句之一的   DBCC   CHECKDB   未更正索引问题,或者您不确定带有修复子句的   DBCC   CHECKDB   对数据的作用,请与您的主要支持提供者联系。   
        
        
      除   SQL   Server   错误日志外,还应检查操作系统错误日志文件,以确定是否是硬件错误造成损坏。   
        
      如果问题仍然存在,请与您的主要支持提供者联系。

    注:

    使用数据库的过程中,由于断电或其他原因,有可能导致数据库出现一些小错误,比如检索某些表特别慢,查询不到符合条件的数据等.
      
      出现这些情况的原因,往往是因为数据库有些损坏,或索引不完整.
      
      在ACCESS中,有个修复数据库的功能可以解决这个问题,在SQL企业管理器,没有这个功能,要用语句来完成,下面就介绍如何用 SQL 语句完成数据库的修复,需要注意的是,在进行下面的操作时,必须断开所有用户的连接:
      
      USE MASTER
      GO
      
      sp_dboption '你的数据库名', 'single user', 'true'
      Go
      
      DBCC CHECKDB('你的数据库名', REPAIR_REBUILD)
      Go
      
      USE 你的数据库名 
      go
      
      exec sp_msforeachtable 'DBCC CHECKTABLE(''?'',REPAIR_REBUILD)'
      go
      
      sp_dboption '你的数据库名', 'single user', 'false'
      Go

    附:

    DBCC CHECKDB('数据库名称',REPAIR_ALLOW_DATA_LOSS)

    REPAIR_ALLOW_DATA_LOSS:是比较高级的修复方式

    REPAIR_FAST:是简单快速的修复方式


    REPAIR_ALLOW_DATA_LOSS
      此选项包括REPAIR_REBUILD 选项的所有修复功能而且还包括为纠正分配错误
      结构性行或页错误而进行数据行或数据页的分配和解除分配以及删除被损坏的文本对
      象这些修复易引起数据丢失所以可在事务中使用该DBCC 命令这样用户可以回
      滚所发生的数据变化然后从备份中进行恢复
    REPAIR_FAST
      该选项只能实现较简单且耗时少的修复功能例如修复非簇索引中的额外键此选项
      不会导致数据丢失
    REPAIR_REBUILD
      此选项包括所有REPAIR_FAST 选项的功能而且能够完成一些耗时的修复操作如
      重建索引此选项不会导致数据丢失

  • 相关阅读:
    Inter IPP 跟 Microsoft V100编译器区别
    目标描述(基于区域的描述)
    目标描述(基于边界的描述)
    目标表达(基于区域的表达)
    表达描述(基于变换的表达)
    目标表达(基于边界的表达)
    分割技术扩展
    分水岭分割算法
    借助均移确定聚类中心
    借助过度区选择阈值
  • 原文地址:https://www.cnblogs.com/MaxIE/p/2338045.html
Copyright © 2020-2023  润新知