【问题标题】:Recovering database with filestream使用文件流恢复数据库
【发布时间】:2017-08-08 23:19:46
【问题描述】:
我有一个带有文件流的数据库设置。文件流存储在与数据文件不同的驱动器上。服务器被迁移到虚拟,驱动器号在不知不觉中发生了变化。数据库进入“恢复挂起”模式。起初我没有意识到发生了什么,所以我把它下线了,希望让它重新上线。那没有用。由于其他原因,我无法将现有驱动器上的驱动器号改回,所以我在原始驱动器上添加了另一个驱动器,复制了文件流数据,但它仍然无法上线。以下错误:
发生文件激活错误。物理文件名 'E:\SQL
Data\AutoServiceATtachments\AutoService_Filestream' 可能不正确'
我的下一步应该是什么?这是 SQL Server 2012。
【问题讨论】:
标签:
sql-server
sql-server-2012
sqlfilestream
【解决方案1】:
对于任何可能遇到此问题的人,我已经弄清楚了。
我备份了所有文件,删除了数据库,然后再次附加它,语法如下:
USE [master]
GO
CREATE DATABASE [FileStreamDB] ON
( FILENAME = N'C:\FileStreamDB\FileStreamDB.mdf' ),
( FILENAME = N'C:\FileStreamDB\FileStreamDB_log.ldf' ),
FILEGROUP [FileStreamGroup] CONTAINS FILESTREAM DEFAULT
( NAME = N'FileStreamDB_FSData', FILENAME = N'C:\FileStreamDB\FileStreamData' )
FOR ATTACH
GO