zoukankan      html  css  js  c++  java
  • SQLSERVER文件组误脱机后如何联机

    【问题】SQLSERVER文件组误脱机后如何联机

    场景:在学习文件组的恢复过程中,通过

    ALTER DATABASE TEST MODIFY FILE(NAME = SUBF,OFFLINE)

    把文件组给弄脱机了。这时却发现脱机之前忘记备份了。

    这时该如何恢复该脱机的文件组呢?

    同样的命令没有ONLINE选项:

    ALTER DATABASE TEST MODIFY FILE(NAME = SUBF,ONLINE)

    消息 155,级别 15,状态 1,第 1 行
    'ONLINE' 不是可以识别的 CREATE/ALTER DATABASE 选项。

    修改数据库脱机,联机后,脱机的文件组还是脱机状态。

    ALTER DATABASE TEST SET OFFLINE
    ALTER DATABASE TEST SET ONLINE

    分离数据库再附加数据库,脱机的文件组也仍然是脱机状态。

     ---------------------------------------------------------------------------------

    【解决】restore database test file='filegroupname'

    其实,把文件恢复就可以了(哪怕没有备份也可以执行):

    RESTORE DATABASE TEST FILE='SUBF' WITH RECOVERY

     ---------------------------------------------------------------------------------

    补充另一个由桦仔提供的文件替换大法:

    1. 将数据库分离 ( sp_detach_db 'xx')

    2. 将数据库的所有文件移个位置

    3. 按照原来的文件颁创建一个同名空库

    4. 将空库 OFFLINE ( alter database xx set offline )

    5. 将步骤2移走的文件移回来,替换掉步骤3创建的空库产生的对应文件

    6. 将数据库 online ( alter database xx set online ), 如果不能 online, 可以试试先设置为 emergency 状态

    以上方法已经测试过能通过。

    转自:https://www.cnblogs.com/ajiangg/p/3598221.html

  • 相关阅读:
    Sublime Text 2.0.2 注册码激活
    常用的接口查询,会持续更新中……
    JavaScript获取访问设备信息
    Param指南
    HTML5调用手机摄像头,仅仅支持OPPOHD浏览器
    GET传值
    关于IE缓存
    浏览器的类别及介绍
    JS调用C#中的变量
    在VS2012中设置默认启动
  • 原文地址:https://www.cnblogs.com/gered/p/12930788.html
Copyright © 2011-2022 走看看