Sql server 用filestream恢复数据库

Sql server 用filestream恢复数据库,sql-server,sql-server-2012,sqlfilestream,Sql Server,Sql Server 2012,Sqlfilestream,我有一个带有文件流的数据库设置。filestream存储在与数据文件不同的驱动器上。服务器已迁移到虚拟,驱动器号在不知不觉中发生了更改。数据库进入“恢复挂起”模式。起初我不知道发生了什么,所以我把它离线,希望能把它恢复在线。那没用。由于其他原因,我无法将驱动器号更改回现有驱动器,因此我添加了另一个带有原始字母的驱动器号,复制了filestream数据,但它仍然无法联机。出现以下错误: 发生文件激活错误。物理文件名“E:\SQL” Data\AutoServiceATtachments\AutoS

我有一个带有文件流的数据库设置。filestream存储在与数据文件不同的驱动器上。服务器已迁移到虚拟,驱动器号在不知不觉中发生了更改。数据库进入“恢复挂起”模式。起初我不知道发生了什么,所以我把它离线,希望能把它恢复在线。那没用。由于其他原因,我无法将驱动器号更改回现有驱动器,因此我添加了另一个带有原始字母的驱动器号,复制了filestream数据,但它仍然无法联机。出现以下错误:

发生文件激活错误。物理文件名“E:\SQL” Data\AutoServiceATtachments\AutoService\u文件流“可能不正确”


我的下一步应该是什么?这是SQL Server 2012。

对于任何可能遇到此问题的人,我已经找到了答案。 我备份了所有文件,删除了数据库,然后再次附加它,语法如下:

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