sql >> Base de Datos >  >> RDS >> Sqlserver

¿Cómo restaurar a una base de datos diferente en SQL Server?

Puede crear una nueva base de datos y luego usar el "Asistente de restauración" habilitando la opción Sobrescribir o:

Ver el contenido del archivo de copia de seguridad:

RESTORE FILELISTONLY FROM DISK='c:\your.bak'

anote los nombres lógicos de .mdf y .ldf de los resultados, luego:

RESTORE DATABASE MyTempCopy FROM DISK='c:\your.bak'
WITH 
   MOVE 'LogicalNameForTheMDF' TO 'c:\MyTempCopy.mdf',
   MOVE 'LogicalNameForTheLDF' TO 'c:\MyTempCopy_log.ldf'

Esto creará la base de datos MyTempCopy con el contenido de your.bak .

(No cree MyTempCopy, se crea durante la restauración)

Ejemplo (restaura una copia de seguridad de una base de datos llamada 'creditline' a 'MyTempCopy'):

RESTORE FILELISTONLY FROM DISK='e:\mssql\backup\creditline.bak'

>LogicalName
>--------------
>CreditLine
>CreditLine_log

RESTORE DATABASE MyTempCopy FROM DISK='e:\mssql\backup\creditline.bak'
WITH 
   MOVE 'CreditLine' TO 'e:\mssql\MyTempCopy.mdf',
   MOVE 'CreditLine_log' TO 'e:\mssql\MyTempCopy_log.ldf'

>RESTORE DATABASE successfully processed 186 pages in 0.010 seconds (144.970 MB/sec).