sql server - script - ¿Cómo restaurar los datos en las bases de datos del grupo de archivos?
script para restaurar base de datos sql server (2)
Tengo una base de datos con dos grupos de archivos:
1- PrimaryFileGroup
2- ArchiveFileGroup
ahora tengo una copia de seguridad del primer grupo de archivos: Primary.bak . y restaurar con la siguiente secuencia de comandos:
USE [master]
GO
ALTER DATABASE MyDatabase
SET SINGLE_USER
WITH
ROLLBACK IMMEDIATE;
RESTORE DATABASE MyDatabase
FILEGROUP = ''PRIMARY''
FROM DISK = ''C:/Primary.bak''
WITH PARTIAL, REPLACE
GO
ALTER DATABASE SaleTabriz
SET MULTI_USER
Se restaura con éxito. pero mis otras tablas que están en ArchiveFileGroup , entran con el siguiente error mientras me gustaría seleccionar de ellas:
El procesador de consultas no puede producir un plan para la tabla o ver ''Cliente'' porque la tabla reside en un grupo de archivos que no está en línea.
¿Cuál es mi error?
RESTORE DATABASE MyDatabase
FROM DISK = ''C:/Primary.bak'',
FILEGROUP = ''PRIMARY'',
FROM DISK = ''C:/Secondary.bak'',
FILEGROUP = ''SECONDARY''
WITH PARTIAL, REPLACE ;
GO
Lo siento, no tengo suficientes representantes para publicar como comentario, de ahí la respuesta.
¿Has intentado poner en línea los grupos de archivos secundarios?
alter database xxxDB modify file (name = ''xxxDB_File1'', online)
Nota: Si el grupo de archivos está de hecho fuera de línea, recuerdo que si esto no funciona, la única otra forma que conozco de establecer un grupo de archivos en línea es restaurar el archivo desde la copia de seguridad.