Comunidad de desarrolladores de Puebla.NET
Iniciar sesión Unete ahora
 
 
Novedades | Anuncios | Eventos | Publicaciones | Foros | Bolsa de trabajo | Conocenos | Encuestas
 
  Buscar  
 
Anónimo
2667918 visitas desde Octubre de 2004
2 usuarios en línea
Contáctanos en línea:





Certificate Veracruz

Seguridad


 
Respaldar y Restaurar Bases por TSQL

Publicado por el Saturday, September 10, 2005 (UMST)

Ayuda para poder respaldar y restaurar bases de datos por programación en modulo administrativo

Saludos amigos, a veces para nuestras aplicaciones es necesario poder tener un módulo donde no importando los derechos se realize un respaldo por cualquier persona en un momento dado.

Yo lo que he hecho es lo siguiente.

-En MSSQL server 2000 creo un usuario respaldo con derechos solo de backup.

-En el módulo creo la cadena de conección y además luego le paso los parametros del usuario de respaldo.

-Mando un comando a MSSQL con la siguiente sentencia TSQL:

 

backup database NOMBREBASE to disk='Ruta y nombre del archivo y extensión'

 

Consideraciones:

-No es necesario que slagan usuarios, no se tiene que meter el usuario al analizador de ocnsultas o administrador, se puede realizar en cualquier momento.

 

Como segunda parte está el asunto de poder restaurar copias de seguridad sin entrar al administrador o algo así...

En el modulo se crea una conexión y no se le pasa usuario ni password (esto porque no cualquiera de´bería de restaurar bases de datos a diestra o siniestra)

-Se le pregunta el usuario y password, que deben tener derechos administrativos para restaurar (por favor ponganle password a sus SA)

-Se ejecutan 3 comandos, esto es por la cuestión de que se necesita quitar los usuarios de base de datos, restaurar, y luego dar acceso a todos.

 

COMANDO 1 (Permite accesar a la base de datos como exclusivo, sin embargo si existen usuarios conectados en ese momento, espera hasta que se salgan todos, mientras quedará en espera)

ALTER DATABASE nombredemibase SET SINGLE_USER

COMANDO 2 (la restauración completa y elimina la base anterior antes de restaurar)

restore database nombredemibase from disk='rutaynombredelarchivoarestaurarconextension' with REPLACE

COMANDO 3 (Regresa la base al estado de permitir multiples clientes

ALTER DATABASE nombredemibase SET MULTI_USER

 

CONSIDERACIONES FINALES

LAs rutas que se manden deberán de ser rutas que existan en el servidor fisicamente, no aplican rutas de cliente (Esta Información ma la compartió Diana Selfa).

 

 

Cualquier o comentario porfavor seran bien recibidos, Gracias

Atte Miguel Juárez


Calificación promedio:

Agregar comentario