Backup Automático con SQL Server 2008 Express
El SQL 2008 Express no trae en forma nativa la utilidad de realizar backup automático, sin embargo podemos hacer el backup programando una tarea automática por medio del sistema operativo.
Lo primero que debemos hacer es crear una carpeta en donde se van a guardar las copias de seguridad por ejemplo en la unidad C: podemos crear la carpeta EDYDSI-Backup. Dentro de esta carpeta crear la carpeta Script. Luego en un block de notas o en el analizador de consulta pegar la secuencia de comandos que se encuentra más abajo(DESDE INICIO HASTA FIN). Guardar el archivo con extensión .sql en la carpeta Script con el nombre BackupDiario.sql. Si la carpeta en la que se va a hacer el backup no es C:\EDYDSI-Backup, cambiar por la ruta de acceso que corresponda.
--INICIO
--Parametros de Entrada
DECLARE @strDatabase varchar(200)
DECLARE @carpetaBackup varchar(500)
DECLARE @strNombreBackup VARCHAR(800)
DECLARE @strBackupFile VARCHAR(800)
--Seleccionar destino del Backup
SET @carpetaBackup = 'C:\EDYDSI-Backup'
--Se obtiene la fecha actual
DECLARE @fechaActual datetime
SET @fechaActual = GETDATE()
DECLARE BDs CURSOR FOR
SELECT RTRIM(bd)
FROM Macromaster.dbo.empresas
WHERE bd in
(
select name from sysdatabases
)
UNION
SELECT
'Macromaster'
OPEN BDs
FETCH NEXT FROM BDs
INTO @strDatabase
WHILE @@FETCH_STATUS = 0
BEGIN
SET @strNombreBackup = STR(DATEPART(YEAR, @fechaActual), 4, 0)
+ REPLACE(STR(DATEPART(MONTH, @fechaActual), 2, 0), N' ', N'0')
+ REPLACE(STR(DATEPART(DAY, @fechaActual), 2, 0), N' ', N'0')
+ REPLACE(STR(DATEPART(HOUR, @fechaActual), 2, 0), N' ', N'0')
+ REPLACE(STR(DATEPART(MINUTE, @fechaActual), 2, 0), N' ', N'0')
+ N'_' + N'db' + N'_' + @strDatabase
SET @strBackupFile = @carpetaBackup + N'\' + @strNombreBackup + N'.bak'
BACKUP DATABASE @strdatabase TO DISK = @strBackupFile WITH INIT
SET @strNombreBackup = ''
SET @strBackupFile = ''
FETCH NEXT FROM BDs
INTO @strDatabase
END
CLOSE BDs
DEALLOCATE BDs
--FIN
Seguidamente inicie el programador de tareas del sistema operativo en Inicio/Accesorio/Herramientas del Sistema/Programador de Tareas y siga los siguientes pasos:
Haga click en la opción crear tarea basica...
Asigne un nombre a la tarea
Seleccione la frecuencia con la que se va a ejecutar la tarea
Especifique la hora y fecha de inicio de la tarea
En la ventana de acción seleccione la opción Iniciar un programa
Haga click en el botón examinar y busque el ejecutable SQLCMD que se encuentra en C:\Program Files\Microsoft SQL Server\100\Tools\Binn
Guarde la tarea y a continuación en la ventana principal del programador de tareas haga doble click sobre Biblioteca de Programador de Tareas. Busque la tarea creada, haga click derecho y propiedades
En la pestaña acciones presione el botón Editar y escriba en el cuadro Programa o Script lo siguiente :
sqlcmd -S NombreServidor -E -i C:\EDYDSI-Backup\Script\BackupDiario.sql
Recuerde cambiar NombreServidor por el nombre del servidor con su instancia correspondiente por ejemplo: server\SQL2008. También tenga en cuenta que la ruta C:\EDYDSI-Backup\Script\BackupDiario.sql se incluye aqui porque se supone que el archivo se encuentra en dicha dirección.
Seguidamente presione aceptar y el asistente le preguntará si desea inluir los nuevos parámetros; presione Sí y cierre el asistente. De esta forma queda programada la tarea para realizar el backup diario de forma automática.
Backup Automático con SQL Server 2000
La programación de backup automático se realiza desde el administrador corporativo. Primeramente se debe hacer doble click sobre el servidor y buscar la carpeta Administración. En la opción Planes de Mantenimiento de base de datos hacer click derecho y luego Nuevo plan de mantenimiento.
Fig. 1
A continuación se iniciará el asistente que le guiará en la creación del plan de mantenimiento. En la primera ventana solo presione el botón siguiente. En la proxima ventana le aparecerá un listado de las base de datos que desea incluir en el plan de mantenimiento(Fig.2). Aqui se deben seleccionar las base de datos que se incluiran, para ello solo debe tildarlas.
Fig. 2
Luego vaya hasta la ventana que se especifica en la figura 3, ignorando las opciones previas. En esta ventana se definen los parametros para realizar el backup. Presione el boton cambiar.
Fig. 3
Seguidamente en la ventana de programación seleccione la frecuencia con la que se hará el backup especificando la hora y fecha de inicio. Es recomendable que el plan de mantenimiento no tenga fecha fin y el backup se haga en un horario en el que el servidor no esté en uso.
En la siguiente ventana se debe seleccionar el directorio en el que se guardarán los archivos de backup. En la opción "Utilizar este directorio" puede escribir la ruta de acceso en donde se guardarán los archivos. A modo de tener más ordenados los archivos es recomendable marcar la opción Crear un Subdirectorio para cada base de datos y a fin de ahorrar espacio en disco también se recomieda tildar la opción de Quitar archivos anteriores a X semanas.
En las ventanas posteriores no es necesario realizar programación alguna por lo tanto solo se debe presionar en botón Siguiente hasta llegar a la ventana final que se muestra en la figura 6