Como hacer Backup para SQL Server 2008 en dispositivos de red
- October 19th, 2009
- Posted in Tech Recipes
- By Germán Medina
- Write comment
Aunque la idea es hacer de este un blog menos técnico y más amigable, empezaré usándolo como lo que es, una bitácora. Hoy tuvimos que configurar nuestros servidores de bases de datos (SQL Server 2008 / Windows 2008) para hacer backups todas las madrugadas en un network drive sobre una máquina Linux. Aunque probablemente esta sea una tarea bastante obvia para un administrador de bases de datos experimentado, debo confesar que dimos varias vueltas antes de lograr el resultado esperado.
Al principio la tarea parecía sencilla, pensamos que solamente debíamos usar las herramientas de administración de SQL Server 2008 para crear el backup (como siempre lo hemos hecho), pero resultó que no es posible usar una dirección de red para este fin, solamente el dispositivo que tiene asociado por defecto. Luego pensamos que lo que debíamos hacer era algún tipo de script que tomara los archivos y los moviera de la ruta configurada a la ruta deseada, pero tampoco fue así de fácil.
Finalmente, y después de una búsqueda acertada encontramos la manera más fácil de hacer todo el proceso y terminamos obteniendo mejores resultados de lo que esperábamos. Esto fue lo que hicimos:
Ejecutamos el siguiente script para asociar la dirección de red a un dispositivo que el servidor aceptara:
EXEC sp_configure 'show advanced options', 1 GO RECONFIGURE GO EXEC sp_configure 'xp_cmdshell', 1 GO RECONFIGURE GO EXEC xp_cmdshell 'net use H: \\DRIVE PASSWORD /user:USUARIO'
Configuramos el correo electronico (Management/Database Mail)
Creamos un operador (SQL Server Agent/Operators)
Creamos un plan de mantenimiento (Management/Maintenance Plans) que nos permitió verificar la integridad de la base de datos, reorganizar los índices, actualizar las estadísticas, hacer backups incrementales y enviar un correo electrónico con el reporte todas las madrugadas.
hola me gusta mucho este tutorial pero podrias ampliarlo o podrias explicarme que debe pasar despues de ejecutar el script que has publicado, lo unico que me da como resultado a mi es un valor NULL en la parte inferios, y al momento de realizar la configuracion de la copia de seguridad no aparece la unidad H ni la letra que yo cree con tu script, y aun colocandola ya conectada en el sistema operativo tampoco aparece, podrias explicarme mas detalladamente este proceso, si puedes enviamelo a mi correo, muchas gracias
P.D.: por cierto me gusta tu blog le veo muy buen futuro, te felicito
Hola Miguel,
Gracias por tus comentarios. Podrías contarme un poco más del proceso que estas realizando? Solo para aclarar algo. No es necesario que conectes la unidad al sistema operativo y si ya la tienes conectada debes usar otra letra. Después de ejecutar el script a través del SQL Server management studio no podrás usar la unidad desde el explorador de windows, solo desde SQL Server.
Funciona de maravilla, en SQL Server 2000 únicamente teniamos que inicar el servicio con un usuario que no fuera “local service” (o aplicar privilegios para ver la red a “local service”.
Pero esta forma es genial.
Gracias!