Restaurar una base de datos moviendo de ubicación los archivos

En algunas ocasiones me encuentro con la necesidad de restaurar una base de datos en un entorno alternativo para desarrollar algún trabajo de evaluación, afinamiento o implementación. Y en buena parte de los casos el equipo en el que voy a restaurar la base de datos no tiene los mismos discos del entorno de producción de donde proviene el backup. Entonces lo que se hace en estos casos es restaurar el backup indicando cuales es la ubicación física a donde queremos que SQL Server mueva los archivos. Digamos que nos encontramos con el siguiente escenario:

Producción Prueba
Archivo de datos E:\ D:\
Archivo de log F:\ E:\

Como vemos, en producción cada componente de la base de datos se aloja en un disco independiente, mientras que en prueba solo tenemos un disco disponible

Si no estamos seguros de los archivos de base de datos incluidos en el backup, podemos ejecutar esta sentencia:

RESTORE FILELISTONLY
FROM DISK=‘D:\SQLServerBackups\AW12Full.bak’

Procedemos a restaurar la base de datos desde el archivo de backup disponible, utilizando un nombre diferente para resaltar que es una base de datos de prueba. Con la información de los archivos físicos obtenida en el paso anterior y con el argumento MOVE..TO le indicamos a SQL Server donde debe copiar los archivos restaurados:

--Restauramos la base de datos en una ubicación diferente
RESTORE DATABASE AdventureWorks2012
FROM DISK='D:\SQLServerBackups\AW12Full.bak'
WITH
MOVE 'AdventureWorks2012_Data'
TO 'E:\NewData\AdventureWorks2012_Data.mdf',
MOVE 'AdventureWorks2012_Log'
TO 'E:\NewData\AdventureWorks2012_Log.ldf',
GO

Al ejecutar la sentencia, el sistema devuelve el siguiente mensaje:
Processed 2320 pages for database ‘AdventureWorks2008R2_TEST’, file ‘AdventureWorks2008R2_Data’ on file 1.
Processed 2 pages for database ‘AdventureWorks2008R2_TEST’, file ‘AdventureWorks2008R2_Log’ on file 1.
Processed 36 pages for database ‘AdventureWorks2008R2_TEST’, file ‘FileStreamDocuments2008R2’ on file 1.
RESTORE DATABASE successfully processed 23237 pages in 3.285 seconds (55.261 MB/sec).

Artículos relacionados:

Como garantizar la integridad de los backup

 

Deja un comentario

Tu dirección de correo electrónico no será publicada.