Compartiendo el Conocimiento_ Backup automáticos de bases de datos SQL Server 2008

7
04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008 programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 1/7 Esté blog sea creado con la finalidad de compartir el conocimiento tecnológico que cada uno posea a lo largo de los años de estudio y practica. Compartiendo el Conocimiento viernes, 11 de febrero de 2011 Backup automáticos de bases de datos SQL Server 2008 Hace mucho tiempo que he tenido la necesidad de generar copias de seguridad (Backup) de las bases de datos que estoy utilizando, en muchos lugares han publicado opciones que son funcionales pero que no utilizan las herramientas que SQL Server tiene, gracias a todos los lugares que visite se me vino una idea a la mente!!! se las detallo a continuación: Primero les comentare un poco acerca de lo que utilice para tener en el servidor la programado para la generación de copias de seguridad automáticas lo que se necesita es lo siguiente; 1.Script para la generación de los BACKUP. 2. Agente de SQL Server. El primer paso es crear el script que genera el respaldo de la base de datos, les dejo el script para que ustedes remplacen las variables necesarias de manera que les sirva en su objetivo: USE nombre_de_su_base; GO declare @fecha varchar(MAX) declare @archivo varchar(MAX) set @fecha = CONVERT(Varchar(max), GETDATE(),102)+'_'+SUBSTRING(CONVERT(varchar(10), getdate(),108),1,2)+SUBSTRING(CONVERT(varchar(10), getdate(),108),4,2)+'horas' set @archivo ='C:\nombredelacarpetaBACKUP\nombre_de_su_base'+@fecha+'.bak' BACKUP DATABASE nombre_de_su_base TO DISK = @archivo WITH FORMAT, MEDIANAME = 'D_SQLServerBackups', NAME = 'Full Backup of nombre_de_su_base'; GO Explico un poco el código: Se han creado dos variables @fecha y @archivo, @fecha es la fecha en la que sea creado el respaldo, es una buena practica ponerle la fecha para identificar la antigüedad del respaldo. La otra variable es @archivo la cual contiene la ruta en la que se guardara el respaldo, si lo hacen directamente en la raíz de la unidad "C" es posible que tengan problemas de permiso de escrituras, por eso les recomiendo que coloquen el respaldo en una carpeta. Donde dice "nombre_de_su_base" deben cambiarlo por nombre de la base a la cual se le generara un respaldo de seguridad. El resto del código es Transact-SQL, les dejo la siguiente URL para enriquezcan mas los conocimiento del mismo: http://msdn.microsoft.com/es- es/library/ms189826(v=SQL.90).aspx Como segundo paso debemos configurar el Agente de SQL Server para programar una tarea que será que encargada de ejecutar el Script que sea especificado en el paso uno, para ello haremos lo siguiente: Participar en este sitio Google Friend Connect Miembros (3) ¿Ya eres miembro? Iniciar sesión Seguidores 2011 (1) febrero (1) Backup automáticos de bases de datos SQL Server 2... Archivo del blog OscarR Ver todo mi perfil Datos personales 0 Compartir Más Siguiente blog» Crear un blog Acceder

Transcript of Compartiendo el Conocimiento_ Backup automáticos de bases de datos SQL Server 2008

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 1/7

Esté blog sea creado con la finalidad de compartir el conocimiento tecnológico que cada uno posea a lo largo de los años deestudio y practica.

Compartiendo el Conocimiento

viernes, 11 de febrero de 2011

Backup automáticos de bases de datos SQL Server2008

Hace mucho tiempo que he tenido la necesidad de generar copias de seguridad (Backup) de

las bases de datos que estoy utilizando, en muchos lugares han publicado opciones que

son funcionales pero que no utilizan las herramientas que SQL Server tiene, gracias a todos

los lugares que visite se me vino una idea a la mente!!! se las detallo a continuación:

Primero les comentare un poco acerca de lo que utilice para tener en el servidor la

programado para la generación de copias de seguridad automáticas lo que se necesita es lo

siguiente;

1.Script para la generación de los BACKUP.

2. Agente de SQL Server.

El primer paso es crear el script que genera el respaldo de la base de datos, les dejo el

script para que ustedes remplacen las variables necesarias de manera que les sirva en su

objetivo:

USE nombre_de_su_base;

GO

declare @fecha varchar(MAX)

declare @archivo varchar(MAX)

set @fecha = CONVERT(Varchar(max),

GETDATE(),102)+'_'+SUBSTRING(CONVERT(varchar(10),

getdate(),108),1,2)+SUBSTRING(CONVERT(varchar(10), getdate(),108),4,2)+'horas'

set @archivo ='C:\nombredelacarpetaBACKUP\nombre_de_su_base'+@fecha+'.bak'

BACKUP DATABASE nombre_de_su_base

TO DISK = @archivo

WITH FORMAT,

MEDIANAME = 'D_SQLServerBackups',

NAME = 'Full Backup of nombre_de_su_base';

GO

Explico un poco el código:

Se han creado dos variables @fecha y @archivo, @fecha es la fecha en la que sea creado

el respaldo, es una buena practica ponerle la fecha para identificar la antigüedad del

respaldo. La otra variable es @archivo la cual contiene la ruta en la que se guardara el

respaldo, si lo hacen directamente en la raíz de la unidad "C" es posible que tengan

problemas de permiso de escrituras, por eso les recomiendo que coloquen el respaldo en

una carpeta. Donde dice "nombre_de_su_base" deben cambiarlo por nombre de la base a

la cual se le generara un respaldo de seguridad.

El resto del código es Transact-SQL, les dejo la siguiente URL para enriquezcan mas los

conocimiento del mismo: http://msdn.microsoft.com/es-

es/library/ms189826(v=SQL.90).aspx

Como segundo paso debemos configurar el Agente de SQL Server para programar una tarea

que será que encargada de ejecutar el Script que sea especificado en el paso uno, para ello

haremos lo siguiente:

Participar en este sitioGoogle Friend Connect

Miembros (3)

¿Ya eres miembro? Iniciar sesión

Seguidores

▼ 2011 (1)

▼ febrero (1)

Backupautomáticos debases de datosSQL Server 2...

Archivo del blog

OscarR

Ver todo mi perfil

Datos personales

0Compartir Más Siguiente blog» Crear un blog Acceder

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 2/7

1. Iniciar sesión en el SQL Server Management para poder tener acceso a la configuración

del Agente de SQL Server.

2. Al entrar al SQL Server Management observaremos en el explorar de objetos que el

agente de SQL Server que encuentra al final del arbol del explorar

Al dar click en icono del + se desplegara un submenu y en el esta la opción de Trabajos que

es lo que nos interesa.

3. Al desplegar el SubMenu del Agente de SQL Server se debe crear un nuevo trabajo, para

ello debemos dar click derecho para que se desplique lo siguiente:

Como pueden observar tenemos la opción de Nuevo trabajo, demos click ahí para dar inicio

la configuración del nuevo trabajo o tarea.

4. Cuando damos click en Nuevo trabajo aparecerá la siguiente ventana:

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 3/7

En la ventana llamada "Nuevo trabajo" se especificara el nombre que tendrá la tarea que

ejecutara el script para generar los respaldos de la base, adicional al nombre es

recomendable que se escriba una breve descripción de la funcionalidad.

5. Al haber especificado en nombre de la tarea, damos click en la opción "Pasos" que se

encuentra ubicada en la parte superior izquierda de la ventana "Nuevo trabajo", para

configurar esa opción se hace lo siguiente:

En la ventana "nuevo paso" especificamos el nombre, la base de datos a la cual se

le hará el respaldo y en la parte donde dice "Comando" hay que copiar el Script ya

modificado a su conveniencia y damos un click en el botón Aceptar.

6. Ahora es el momento de programar la frecuencia con la que se generar los respaldo de

seguridad, para ello damos click en la opción "Programaciones", para configurar una

programación hacemos lo siguiente:

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 4/7

Publicado por OscarR en 15:46

En la ventana "Nueva Programación de trabajo" especificamos un nombre para poder

identificar la programación, en la sección "Frecuencia" especificamos con que frecuencia

queremos que se ejecute la tarea, para los respaldos de la base es recomendable que se

haga diario o según la necesidad, si seleccionan con una frecuencia diaria en la sección

"Frecuencia Diaria" pueden especificar la hora de inicio y fin y otros datos más que que

puede ser de utilidad. una ves sea hecho todas las especificaciones de la programación

damos aceptar y luego aceptar para terminar con la configuración del Agente de SQL Server.

Bueno es todo lo que hay que hacer para tener la generación de copias de seguridad de las

bases de datos... Espero le ayude....

Exitos y que Dios les bendiga...

Recomendar esto en Google

Respuestas

11 comentarios:

SEGU-HACKING 10 de febrero de 2012 05:21

DESDE YA MUCHAS GRACIAS AMIGO XQ LO USO PARA HACER LOS

BACKUPS EN LOS SERVERS DE MI TRABAJO.PERO COMO PUEDO HACER

PARA QUE SOBREESCRIBA EL ARCHIVO .BAK Y NO GENERE TODOS LOS

DIAS UN NUEVO ARCHIVO SINO TENGO QUE BORRAR EL BACKUP DEL DIA

ANTERIOR SINO NO ME LLENA EL HDD. GRACIAS Y ESPERO RESPUESTA

Responder

Gustavo T. 3 de abril de 2012 15:44

En la opcion donde dice get date, te coloca la fecha con dias,horas; si

modificas esa opcion te lo guarda solo con la fecha y el dia, asi que si

generas mas de 1 backup al dia, el más reciente reemplazara al anterior.

ahora si quieres evitar borrar manualmente el .bak del dia anterior existe

otro script no igual a este donde le indicas la periodicidad para que se

borre automatico.

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 5/7

Responder

Respuestas

Responder

EXECUTE master.dbo.xp_sqlmaint N'-PlanID 075177D6-9B95-4CBC-

BB45-05108D1D52C2 -WriteHistory -VrfyBackup -BkUpMedia DISK -

BkUpDB "\\SISTEMAS\e$\Backup" -DelBkUps 8HOURS -BkExt "BAK"'

Gustavo T. 3 de abril de 2012 08:45

Responder

Este comentario ha sido eliminado por el autor.

Look what you' ve done 20 de mayo de 2012 10:19

Hola amigo yo estoy desarrollando una aplcacion en poer builder 10.5 quisiera q me

ayudes si es posible como crear y restaurar backups desde este entorno y sino es

el caso aqui ya esta como hacer las copias programadas y esta super esta info y

se te agradece pero quisiera el code para hacer una restauracion tambien

programada se te agradeceria infinitamente ya q soy nuevo en esto mi correo es

[email protected] gracias de antemano

Responder

Ponkast 25 de mayo de 2012 10:02

Este comentario ha sido eliminado por el autor.

Ponkast 25 de mayo de 2012 10:03

Hola amigo si te entiendo bien en esta pagina esta lo que necesitas:

http://solocodigofuente.com/ejemlos-de-codigos-fuente-en-power-

builder/crear-copia-de-seguridad-restaurar-adjuntar-una-base-de-datos-en-

power-builder-105/

Yo hasta el momento no me he visto con la necesidad de hacer backups

desde una aplicación pero espero la info. te ayude con problema....

Ponkast 25 de mayo de 2012 10:07

Este blog lo cree yo y ya no le podre dar continuidad, por motivos de extravió de

contraseña... Por esa razón he creado otro que se llama:

http://elprogramadornsv.blogspot.com/, ahi esta y otra inf. les invito a que pasen....

Responder

chocobo 21 de enero de 2013 09:56

muchas gracias, por ambos blogs, copiare la informacion. la posteare en mi perfil y

pondre de fuente este u el otro blogspot.

Responder

eaa90b0c-9616-11e2-9fe8-000f20980440 26 de marzo de 2013 06:14

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 6/7

Respuestas

Responder

Introduce tu comentario...

Comentar como: Cuenta de Google

Publicar Vista previa

hola como puedo realizar los backup en unidades compartidas de otras pc en la red.

Responder

Raul Zarate 17 de junio de 2013 14:39

Hola, aqui tengo unos links que encontré con esa solución, ya los aplique

y si funcionan correctamente.

Ligas:

http://itcordoba.wordpress.com/2012/04/12/backup-sql-server-2008-r2-en-

dispositivos-de-red/

http://blog.manglar.com/backup-para-sql-server-en-dispositivos-de-red/

http://technet.microsoft.com/en-

us/library/gg651155%28v=ws.10%29.aspx

EXEC sp_configure 'show advanced options', 1

GO

RECONFIGURE

GO

EXEC sp_configure 'xp_cmdshell', 1

GO

RECONFIGURE

GO

--Esta linea agrega el dispositivo fisico de red como una unidad en SQL

no se visualiza en windows

--EXEC xp_cmdshell 'net use N: \\server\file Password

/user:user_db\password_db'

--si deseas eliminar todas las unidades que han sido agregadas

EXEC xp_cmdshell 'net use /delete * /Y'

--si deseas eliminar una unidad específica agregada

--EXEC xp_cmdshell 'net use N: /delete'

jesus 9 de abril de 2013 21:48

hoye brother como puede respaldar varias bases ala ves con un backup

Responder

04/07/13 Compartiendo el Conocimiento: Backup automáticos de bases de datos SQL Server 2008

programadoressv.blogspot.com/2011/02/backup-automaticos-de-bases-de-datos.html 7/7

Página principal

Suscribirse a: Enviar comentarios (Atom)

Plantilla Awesome Inc.. Con la tecnología de Blogger.