Cómo Mover el Archivo LOG De Una Base de Datos

Algunas veces he tenido la necesidad de mover los archivos LOG de la base de datos de un disco duro a otro. En este artículo, voy a describir el código T-SQL que utilizo para lograr este objetivo.

Primero selecciono la base de datos y ejecuto el procedimiento de systema SP_HELPFILE para obtener el nombre y PATH donde se encuentran los archivos de la base de datos.

USE NorthWind
GO
SET NOCOUNT ON
EXEC SP_HELPFILE

En mi ordenador estan en C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATA. Cambio la base de datos a master y separo la base de datos NorthWind

USE master
GO

EXEC SP_DETACH_DB 'NorthWind'
GO

Ahora abro una sesión de Windows Explorer para mover el archivo LOG a su nueva localidad. En mi ordenador lo copio a D:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATA y regreso a mi sesión de analizador de consultas (Query Analyzer) para ejecutar el procedimiento de systema SP_ATTACH_DB y asi pegar la base de datos utilizando el nuevo PATH donde se encuentran los archivos de la base de datos

EXEC SP_ATTACH_DB 'NorthWind'
'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATANorthWind_Data.mdf',
'D:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATANorthWind_Log.ldf'
GO

Cambio la base de datos nuevamente y ejecuto el procedimiento de systema SP_HELPFILE para verificar que la base de datos esta utilizando el archivo LOG en su nueva localidad. Tambien ejecuto el procedimiento de systema SP_HELPDB para verificar que la base de datos esta en linea.

USE NorthWind
GO
EXEC SP_HELPFILE
GO
EXEC SP_HELPDB 'NorthWind'
GO

Updated on 04/18/2011

El procedimiento almacenado sp_attach_db va a ser descontinuado en versiones proximas del SQL Server. Se recomienda que utilize el CREATE DATABASE database_name FOR ATTACH.

USE master
GO

CREATE DATABASE [NorthWind]
    ON (FILENAME = N'C:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATANorthWind_Data.mdf'),
       (FILENAME = N'D:Program FilesMicrosoft SQL ServerMSSQL.1MSSQLDATANorthWind_Log.ldf')
   FOR ATTACH
GO

Espero que encuentren ese pequeño artículo de ayuda.