zoukankan      html  css  js  c++  java
  • SQL 恢复master数据库方法,没有log文件的数据库文件恢复方法

    SQL Server恢复master数据库方法

    第一步:复制model.mdf、mastlog.ldf、model.mdf、modellog.ldf、msdbdata.mdf、msdblog.ldf文件。

    X:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLBinnTemplates

    X:Program FilesMicrosoft SQL ServerMSSQL10.MSSQLSERVERMSSQLDATA
    注:以上“X:Program FilesMicrosoft SQL Server”为SQL Server的安装目录。以下的“C:Program FilesMicrosoft SQL Server”为系统盘下的目录

    第二步:定位并执行安装命令
    1. 首先找到安装命令:C:Program FilesMicrosoft SQL Server100Setup BootstrapReleasesetup.exe
    2. 执行命令

    • 如果只是Windows身份验证模式,只需要如下语法即可:
      setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=<instance name> /SQLSYSADMINACCOUNTS=<accounts> 
    • 如果是复合身份验证模式,则需要使用/SAPWD参数提供sa的密码:
      setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=<instance name> /SQLSYSADMINACCOUNTS=<accounts> /SAPWD=<sa password>

    我安装时设置的是复合认证模式,SQL Server系统管理员帐号是administrators组,sa密码是123456。并且就一个默认实例:MSSQLSERVER。
    所以在命令行执行如下命令:
    setup /ACTION=REBUILDDATABASE /QUIET /INSTANCENAME=MSSQLSERVER /SQLSYSADMINACCOUNTS=administrators /SAPWD=123456

    第三步:执行完毕后没有任何提示信息(不管成功与否),但是可以马上在C:Program FilesMicrosoft SQL Server100Setup BootstrapLogSummary.txt中查看安装日志。

    最后,在Sql Server Configuration Manager中启动SQL Server服务成功。

    只有mdf文件时,应当如何进行恢复

    1、新建一个同名数据库。

    2、停止数据库服务,覆盖新建的数据库主文件(小技巧:最好放在同一个磁盘里面,把新建的数据库主文件删掉或移开,再把要恢复的数据库主文件剪切过去,这样就可以节省时间。)
     
    3、启动数据库服务,数据库变为置疑或可疑状态。然后在查询分析器中运行:
    alter database 无日志文件的数据库名称 set emergency
    设置为紧急状态。
     
    4、再运行:
    alter database 无日志文件的数据库名称 set single_user
    或者:
    Sp_dboption '无日志文件的数据库名称', 'single user', 'true'
    设置为单用户模式。
     
    5、检查并重建日志文件,运行:
    dbcc checkdb('无日志文件的数据库名称',REPAIR_ALLOW_DATA_LOSS)
    这个时间比较长。耐心等待!如果有错误提示,再运行:
     dbcc checkdb('无日志文件的数据库名称',REPAIR_REBUILD)
    进行修复。如果没有错误,可以跳过。
     
    6、恢复成多用户模式
    alter database 无日志文件的数据库名称 set multi_user
    或者:
    Sp_dboption '无日志文件的数据库名称', 'single user', 'false'
    刷新数据库,你就可以看到已经修复好的数据库了。
  • 相关阅读:
    Python中的返回函数与闭包
    Python的高阶函数小结
    Python的生成器Generator小结
    Vim插件YCM的安装
    用Vundle管理Vim插件
    声卡(Sound Card)基本概念
    Linux中Source的用法
    js 的执行过程
    mongoose@4.5.2的eachAsync bug
    [mongodb] MMAP 和wiredTiger 的比较
  • 原文地址:https://www.cnblogs.com/limark/p/5477815.html
Copyright © 2011-2022 走看看