1

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

发生文件激活错误。物理文件名 'E:\SQL Data\AutoServiceATtachments\AutoService_Filestream' 可能不正确'

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

4

1 回答 1

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
于 2017-08-08T15:19:46.807 回答