zoukankan      html  css  js  c++  java
  • MS Sql Server无日志数据库恢复办法

      很多情况下,我们在备份数据库的时候只Copy了数据文件(.mdf文件),误删除日志文件或者是数据库日志出现异常。都需要只根据数据文件恢复数据库。
      一、2000下的解决办法:
      1.新建一个同名的数据库
      2.再停掉sql server(注意不要分离数据库)
      3.用原数据库的数据文件覆盖掉这个新建的数据库
      4.再重启sql server
      5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)
      6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
      数据库的脚本创建一个新的数据库,并将数据导进去就行了.
      USE MASTER
      GO
      SP_CONFIGURE 'ALLOW UPDATES',1 RECONFIGURE WITH OVERRIDE
      GO
      UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME='要恢复的数据库名称'
      Go
      sp_dboption '要恢复的数据库名称', 'single user', 'true'
      Go
      DBCC CHECKDB('要恢复的数据库名称')
      Go
      update sysdatabases set status =28 where name='要恢复的数据库名称'
      Go
      sp_configure 'allow updates', 0 reconfigure with override
      Go
      sp_dboption '要恢复的数据库名称', 'single user', 'false'
      Go
      
      二、2005下的解决办法:

      1、停止数据库服务。
      2、将需要恢复的数据库文件复制到另外的位置。
      3、启动数据库服务。
      4、确认要恢复的数据库文件已经成功复制到另外的位置,然后在SQL Server Management Studio中删除要恢复的数据库。
      5、新建同名的数据库(数据库文件名也要相同)。
      6、停止数据库服务。
      7、用第2步中备份的.mdf文件覆盖新数据库的同名文件。
      8、启动数据库服务。
      9、运行alter database dbname set emergency,将数据库设置为emergency mode
      10、运行下面的命令就可以恢复数据库:
       use master 
       declare @databasename varchar(255) 
       set @databasename='要恢复的数据库名称' 
       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'--将目标数据库置为多用户状态 

  • 相关阅读:
    Java 验证码工具类
    Servlet实现文件下载
    SQLyog连接报错 Error No.2058 Plugin caching_sha2_password could not be loaded
    springmvc上传文件出现异常,postman测试,文件上传问题org.springframework.web.HttpMediaTypeNotSupportedException: Content type 'multipart/form-data;
    swaager2中实现文件上传的api测试操作
    idea中无法正常显示java与jsp文件内容
    servlet容器多线程与spring单例
    ThreadLocal使用与注意事项
    mysql的分组之后取时间最大的时间的那个数据
    servlet中常见装饰类HttpServletRequestWrapper等等
  • 原文地址:https://www.cnblogs.com/13590/p/841095.html
Copyright © 2011-2022 走看看