2017-08-07 2 views
0

J'avais une configuration de base de données avec un flux de fichiers. Le stockage de filestream était sur un lecteur séparé que les fichiers de données. Le serveur a été migré vers virtuel et la lettre de lecteur a changé sans le savoir. La base de données est passée en mode 'Recovery Pending'. Je n'ai pas réalisé au début ce qui s'était passé, alors je l'ai mis hors ligne dans l'espoir de le remettre en ligne. Cela n'a pas fonctionné. Pour d'autres raisons, je ne pouvais pas changer la lettre de lecteur sur le lecteur existant, donc j'ai ajouté un autre avec la lettre originale, copié les données de flux de fichiers, mais il ne sera toujours pas en ligne. L'erreur suivante:Récupération de la base de données avec le flux de fichiers

A file activation error occurred. The physical file name 'E:\SQL Data\AutoServiceATtachments\AutoService_Filestream' may be incorrect'

Quelles devraient être mes prochaines étapes? C'est SQL Server 2012.

Répondre

0

Juste pour n'importe qui qui peut rencontrer cela, je l'ai compris. J'ai sauvegardé tous les fichiers, j'ai supprimé la base de données, puis je l'ai attachée de nouveau, avec la syntaxe suivante:

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