![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
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); |
#2
|
||||
|
||||
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
Última edición por vtdeleon fecha: 18-09-2006 a las 19:48:07. |
#3
|
||||
|
||||
Alguien podria opinar por favor. Gracias...
|
#4
|
||||
|
||||
¿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]
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
||||
|
||||
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; |
#6
|
||||
|
||||
![]() Alguna opinion al respecto...
![]() |
#7
|
||||
|
||||
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';
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#8
|
||||
|
||||
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 |
#9
|
||||
|
||||
Estoy de acuerdo con jachguate, yo acostumbro a usar el "gbak", es más cómodo.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#10
|
||||
|
||||
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. ![]() |
#11
|
||||
|
||||
__________________
Juan Antonio Castillo Hernández (jachguate) Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate |
#12
|
||||
|
||||
Ok al estudio. gracias...
![]() |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
SysUtil Backup | CARSOFT_AR | Varios | 0 | 01-06-2005 15:43:36 |
Backup Interbase | GIVO | Conexión con bases de datos | 1 | 15-07-2004 16:21:41 |
Backup en CD | Onti | Firebird e Interbase | 5 | 12-06-2004 01:19:51 |
Hacer backup | brandolin | MySQL | 0 | 08-11-2003 12:47:38 |
Help backup | edson | Conexión con bases de datos | 1 | 07-05-2003 15:54:27 |
![]() |
|