Programar Copias de Seguridad en SQL Server 2005-2008 Express
La versión Express de SQL Server 2005 y 2008 no dispone del SQL Agent, luego no podemos programa copias de seguridad periodicas.
Para realizar esta operación, en cambio podemos realizarlo utilizando el comando SQLCMD y el administrado de tareas programadas de windows.
Primero crearemos un archivo llamado Backup.sql por ejemplo con el siguiente contenido:
Despues añadimos una tarea al programador de tareas con la siguiente instrucción:
En dicha tarea programada le indicaremos la hora y los dias que deseamos que se lance la tarea de copias de seguridad.
Para realizar esta operación, en cambio podemos realizarlo utilizando el comando SQLCMD y el administrado de tareas programadas de windows.
Primero crearemos un archivo llamado Backup.sql por ejemplo con el siguiente contenido:
------------------------ -- BACKUP Base de datos ------------------------ DECLARE @strDBName nvarchar(50) DECLARE @strFolder nvarchar(500) DECLARE @tToday datetime DECLARE @strBackupName nvarchar(100) DECLARE @strBackupFile nvarchar(600) -- Nombre de la Base de Datos SET @strDBName = N'MiBaseDatos' -- Directorio Destino de la copia de seguridad SET @strFolder = N'C:\CopiasSeguridad' -- Componer nombre del archivo de copia de seguridad SET @tToday = GETDATE() SET @strBackupName = @strDBName + N' ' +STR(DATEPART(year, @tToday), 4, 0) +REPLACE(STR(DATEPART(month, @tToday), 2, 0), N' ',N'0') +REPLACE(STR(DATEPART(day, @tToday), 2, 0), N' ', N'0') +REPLACE(STR(DATEPART(hour, @tToday), 2, 0), N' ', N'0') +REPLACE(STR(DATEPART(minute, @tToday), 2, 0), N' ', N'0') SET @strBackupFile = @strFolder + N'\' + @strBackupName + N'.bak' BACKUP DATABASE @strDBName TO DISK = @strBackupFile WITH NOFORMAT, INIT, SKIP, NAME = @strBackupName |
Despues añadimos una tarea al programador de tareas con la siguiente instrucción:
SQLCMD -S(local)\SQLEXPRESS -E -i"C:\Backup.sql" Descripcion de los parametros: -S -> indica el nombre y la instancia del servidor -E -> autentificación windows -i -> archivo que contiene el conjunto de instrucciones |
En dicha tarea programada le indicaremos la hora y los dias que deseamos que se lance la tarea de copias de seguridad.
Muchas gracias por esta entrada.
ResponderEliminarOtra Ingeniera técnica en informática de gestión haciendo labores de Administración.
Hola,
ResponderEliminarEste script borra cada X dias el backup mas antiguo?
Un saludo.