您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

SQLSERVER文件组误脱机后如何联机

2024/3/27 10:53:20发布32次查看
场景:在学习文件组的恢复过程中,通过 alter database test modify file (name = subf,offline) 把文件组给弄脱机了。这时却发现脱机之前忘记备份了。 这时该如何恢复该脱机的文件组呢? 同样的命令没有online选项: alter database test modify file (name
场景:在学习文件组的恢复过程中,通过
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 offlinealter database test set online
分离数据库再附加数据库,脱机的文件组也仍然是脱机状态。
 ---------------------------------------------------------------------------------
其实,把文件恢复就可以了(哪怕没有备份也可以执行):
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 状态
以上方法已经测试过能通过。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product