zoukankan      html  css  js  c++  java
  • sql server 2008 数据库可疑的解决步骤

    备份并新建同名数据库,并替换原数据文件

    1 把问题数据库备份后直接删除

      停掉SQLSERVER服务,把服务器上出问题的数据库, 假设名称为 test的数据库文件及日志文件备份到其他目录,然后直接将其删除,把其数据库文件及日志文件也删除

    2 新建同名数据库

      启动SQLSERVER服务,新建同名数据库test,文件目录和日志和原来一致

    3 用备份的数据库文件替换新的数据库文件

      停掉SQLSERVER服务,把备份的数据库文件替换新的数据库文件(只替换数据库文件,不替换日志文件)

      启动SQLSERVER服务,打开数据库,这时数据库应该是不能访问的

    -------------------设置应急模式、单用户模式、检查修复数据,取消单用户模式----------------------

    4 将数据库设置为应急状态

      alter database test set emergency

      执行后,为了保险起见,重新停止、开启的SQLSERVER服务

      再打开数据库,已经可以看到里面的内容了,如表,视图,存储过程等

      数据库名称后有紧急标志,能看到数据库结构,但无法进行备份等操作

    5 将数据库设置为单用户模式

      ALTER DATABASE test SET SINGLE_USER

    6 对数据库进行检查修复

      dbcc checkdb(test,REPAIR_ALLOW_DATA_LOSS)

      dbcc checkdb(test,REPAIR_REBUILD)

      操作后,仍然停止启动SQLSERVER服务(不确定是否需要,我只是为了想无干扰查看执行后的数据库状况)
     
      重新打开数据库,已经是正常状态了,没有应急提示了

    7 取消单用户模式

      exec sp_dboption test, N'single', N'false'

    至此,数据库恢复完毕,对数据库进行BAK

  • 相关阅读:
    解决问题,别扩展问题
    Hystrix 配置参数全解析
    请求合并哪家强
    在Spring-Boot中实现通用Auth认证的几种方式
    Java高级特性之泛型
    一键部署进化史
    JavaScript Alert 函数执行顺序问题
    新版的 Springsecurity request.getRequestDispatcher).forward(request, response); 404 问题,已解决
    maridb 10.3 主从复制,待机情况下从库 cpu 占用率高的处理方法
    springboot 2.0 mariadb hikari-cp连接池
  • 原文地址:https://www.cnblogs.com/Thenext/p/9916004.html
Copyright © 2011-2022 走看看