Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 24-08-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Ejecutar un Backup

Saludos.

Tengo el siguiente escenario:

Servidor Linux (ubuntu 5.04), BD fireBird en este servidor

Cliente WXP aplicacion en delphi 7 componente que hace el respaldo ibservices.

La situacion es la siguiente: al configurar el ibservices para hacer el respaldo con las direcciones locales (es decir wxp), lo ejecuta perfectamente. El nombre del respaldo es la fecha+hora+segundos.fbk. Esto funcionan cuando tengo la BD local. Se realizo otra prueba que consiste en colocar en el servidor linux la BD y se configuro el respaldo dirigido hacia wxo local y funciono. Pero cuando se dirige el respaldo hacia el servidor siempre genera un error que no se puede abrir el archivo de respaldo.

La comunicacion con el servidor esta ok. Se trabaja sin problemas con la bd en el servidor.

Se coloco un disco duro (120gb) adicional en el servidor y se generaron dos particiones: una para la bd (60GB) y la otra para el respaldo. Las particiones estan creadas con root (logico) y ext3 y son primarias.

Incluisve cuando trato de hacer el respaldo en la misma ubicacion de la bd, tambien genera el error de no poder abrir el archivo de respaldo.

Trate de ser lo mas explicito posible. Gracias


Rutina que se utiliza:


Código Delphi [-] with IBBackupService1 do
begin
BackupFile.Clear;
Params.Clear;
Edit1.Text:=FormatDateTime('ddmmyyyyhhmmss', now);
LoginPrompt := False;
Params.Add('user_name=sysdba');
Params.Add('password=masterkey');
Active := True;
try
Verbose := True;
Options := [NonTransportable, IgnoreLimbo];
DatabaseName :='ppal:/lifebd/life.fdb';
BackupFile.Add('ppal:/backup/'+Edit1.Text+'.fbk');
ServiceStart;
finally
Active := False;
end;
Edit2.Text:='ppal:/backup'+Edit1.Text+'.fbk';
Application.MessageBox ('Respaldo Exitoso','Aviso...',mb_ok+mb_Iconinformation);
Edit2.Clear;
Edit1.Text:=DateTimeToStr(now);
Responder Con Cita
  #2  
Antiguo 04-09-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Saludos.

Tengo el siguiente escenario:

Servidor Linux (ubuntu 5.04), BD fireBird en este servidor

Cliente WXP aplicacion en delphi 7 componente que hace el respaldo ibservices.

La situacion es la siguiente: al configurar el ibservices para hacer el respaldo con las direcciones locales (es decir wxp), lo ejecuta perfectamente. El nombre del respaldo es la fecha+hora+segundos.fbk. Esto funcionan cuando tengo la BD local. Se realizo otra prueba que consiste en colocar en el servidor linux la BD y se configuro el respaldo dirigido hacia wxo local y funciono. Pero cuando se dirige el respaldo hacia el servidor siempre genera un error que no se puede abrir el archivo de respaldo.

La comunicacion con el servidor esta ok. Se trabaja sin problemas con la bd en el servidor.

Se coloco un disco duro (120gb) adicional en el servidor y se generaron dos particiones: una para la bd (60GB) y la otra para el respaldo. Las particiones estan creadas con root (logico) y ext3 y son primarias.

Incluisve cuando trato de hacer el respaldo en la misma ubicacion de la bd, tambien genera el error de no poder abrir el archivo de respaldo.

Trate de ser lo mas explicito posible. Gracias


Rutina que se utiliza


Código Delphi [-]
with IBBackupService1 do
begin
BackupFile.Clear;
Params.Clear;
Edit1.Text:=FormatDateTime('ddmmyyyyhhmmss', now);
LoginPrompt := False;
Params.Add('user_name=sysdba');
Params.Add('password=masterkey');
Active := True;
try
Verbose := True;
Options := [NonTransportable, IgnoreLimbo];
DatabaseName :='ppal:/lifebd/life.fdb';
BackupFile.Add('ppal:/backup/'+Edit1.Text+'.fbk');
ServiceStart;
finally
Active := False;
end;
Edit2.Text:='ppal:/backup'+Edit1.Text+'.fbk';
Application.MessageBox ('Respaldo Exitoso','Aviso...',mb_ok+mb_Iconinformation);
Edit2.Clear;
Edit1.Text:=DateTimeToStr(now);

Última edición por vtdeleon fecha: 18-09-2006 a las 20:48:07.
Responder Con Cita
  #3  
Antiguo 06-09-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Alguien podria opinar por favor. Gracias...
Responder Con Cita
  #4  
Antiguo 06-09-2006
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
¿Creo entender que haces un backup y luego ese archivo creado no puedes abrirlo?, perdona, pero no entiendo exactamente el problema, ¿puedes aclarármelo?

Por cierto, para que se entienda mejor, usa las etiquetas para el código, ya sabes:
[ CODE]
aquí va el código
[ /CODE]
Responder Con Cita
  #5  
Antiguo 08-09-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Use las etiquetas equivocadas.

EL problema radica que desde un cliente se manda a ejecutar el backup en el servidor y me genera el siguiente error:

---------------------------
Debugger Exception Notification
---------------------------
Project Life.exe raised exception class EIBInterBaseError with message 'cannot open backup file ppal:/lifebak/08092006123653.fbk'. Process stopped. Use Step or Run to continue.
---------------------------
OK Help
---------------------------

La rutina es la siguiente:

Código:
 
  with IBBackupService1 do
  begin
    BackupFile.Clear;
    Params.Clear;
    Edit1.Text:=FormatDateTime('ddmmyyyyhhmmss', now);
    //ServerName := 'ppal';
    LoginPrompt := False;
    Params.Add('user_name=sysdba');
    Params.Add('password=masterkey');
    Active := True;
    try
      Verbose := True;
      Options := [NonTransportable, IgnoreLimbo];
      DatabaseName :='ppal:/lifebd/life.fdb';
      BackupFile.Add('ppal:/lifebak/'+Edit1.Text+'.fbk');
      ServiceStart;
    finally
      Active := False;
    end;
    Edit2.Text:='c:\backup_life\'+Edit1.Text+'.fbk';
    Application.MessageBox ('Respaldo Exitoso','Aviso...',mb_ok+mb_Iconinformation);
    Edit2.Clear;
    Edit1.Text:=DateTimeToStr(now);
  end;
Responder Con Cita
  #6  
Antiguo 11-09-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Question

Alguna opinion al respecto...
Responder Con Cita
  #7  
Antiguo 11-09-2006
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bueno, así, sin verlo, sin tenerlo delante y mirar, probar... es complicado.

Pero, por ejemplo, creo que has dicho que el servidor es linux, entonces no entiendo la siguiente línea:
Código:
Edit2.Text:='c:\backup_life\'+Edit1.Text+'.fbk';
¿Y puedes restaurar el backup hecho?, ¿qué error te sale?
Responder Con Cita
  #8  
Antiguo 11-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
En lo particular, me resulta mas cómodo programar una tarea que haga el backup directamente en el servidor. El script es sencillo, como invocar al gbak con los parámetros adecuados.

Con cron podes conseguir que esta tarea se ejecute automáticamente con la frecuencia que consideres apropiada.

Con respecto de la forma que lo estas haciendo, dudo mucho que el servicio de backup pueda acceder a la ruta ppal:/backup/loquesa.fbk, pero es algo que no he probado ni tengo como hacer ahora. En todo caso, no perdas de vista que el backup se está lanzando desde el cliente, con lo que el archivo de destino, que no es una base de datos, debiera estar accesible para el proceso local, con una ruta que pueda interpretar el sistema de archivos.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #9  
Antiguo 11-09-2006
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Estoy de acuerdo con jachguate, yo acostumbro a usar el "gbak", es más cómodo.
Responder Con Cita
  #10  
Antiguo 12-09-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Ok, por fin algo a que atenerme. EL proposito entonces es hacer un script donde se invoque el gbak en el mismo servidor y sea ejecutado a traves de un cron (si va a ser automatico). Teniendo esto en mente ahora necesito una orientacion para realizar un script y que en el script se le coloque como nombre del respaldo la fecha+hora+segundo+.fbk y sea ejecutado por el cliente (En este particular agradeceria cualquier ejemplo que me puedan suministrar).

NOTA: Casimiro la linea de codigo que comentas, es una linea que me falto comentar por lo tanto al ejecutar el programa siempre se truncaba lineas antes y nunca llegaba a la linea comentada, pero si esta fuera de lugar.

Gracias por su atencion.
Responder Con Cita
  #11  
Antiguo 12-09-2006
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Date una vuelta por Time/Date commands o Linux Shell Scripting Tutorial

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
Responder Con Cita
  #12  
Antiguo 18-09-2006
Avatar de sierraja
sierraja sierraja is offline
Miembro
 
Registrado: sep 2004
Posts: 281
Poder: 20
sierraja Va por buen camino
Ok al estudio. gracias...
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
SysUtil Backup CARSOFT_AR Varios 0 01-06-2005 16:43:36
Backup Interbase GIVO Conexión con bases de datos 1 15-07-2004 17:21:41
Backup en CD Onti Firebird e Interbase 5 12-06-2004 02:19:51
Hacer backup brandolin MySQL 0 08-11-2003 13:47:38
Help backup edson Conexión con bases de datos 1 07-05-2003 16:54:27


La franja horaria es GMT +2. Ahora son las 21:02:54.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi