• 附加数据库失败,sql2008,断电数据库日志受损


    附加数据库失败,提示:
    无法在数据库 'DBNAME' (数据库 ID 为 7)的页 (1:210288) 上重做事务 ID (0:0) 的日志记录
    或者
    在重做数据库 'DBNAME' 的日志中记录的操作时,日志记录 ID (1752535:20699:5) 出错
    或者
    找不到日志文件
    或者
    日志文件不匹配

    首先:停止数据库服务,把有问题的数据库拷贝一份

    第一步:先建立一个同名数据库,数据库文件和日志的名称设置成跟原数据库文件一致
    停止SQL SERVER2008,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库

    第二步:查询分析器执行,
    SQL code


    alter database NEWDBNAME set emergency
    declare @databasename varchar(255)
    set @databasename='NEWDBNAME'
    exec sp_dboption @databasename, N'single', N'true'
    dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) --将目标数据库置为单用户状态
    dbcc checkdb(@databasename,REPAIR_REBUILD)
    exec sp_dboption @databasename, N'single', N'false'


    第三步:以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码

    断电 数据库状态 变为可疑,停掉数据服务后,复制一份数据。然后启动服务,直接在查询分析器执行以上代码,一般能够恢复正常

    2019.8.6查询数据库恢复挂机,解决办法,执行下面代码 

    下面代码的test改为你的库名
    USE master
    GO
    ALTER DATABASE test SET SINGLE_USER
    GO
    ALTER DATABASE test SET EMERGENCY
    GO
    DBCC CHECKDB(test,REPAIR_ALLOW_DATA_LOSS)
    GO
    ALTER DATABASE test SET ONLINE
    GO
    ALTER DATABASE test SET MULTI_USER
    GO
  • 相关阅读:
    深入理解 JavaScript(五)
    深入理解 JavaScript(四)
    深入理解 JavaScript(三)
    opecv官网接口查询
    一个python-opencv博客
    Python中range和xrange的区别
    【转载】opencv 二值化函数——cv2.threshold
    python-opencv中的cv2.inRange函数
    anaconda conda install wxpython4 安装包 python3环境(GUI)
    python之assert
  • 原文地址:https://www.cnblogs.com/yubufan/p/5420024.html
Copyright © 2020-2023  润新知