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 Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-11-2011
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Copia de seguridad Firebird desde PHP

Hola.

Alguno a tenido la oportunidad de realizar copia de seguridad de una base de datos en firebird desde php, he recurrido al manual de php pero el codigo que muestra no funciona:

Código PHP:
$resource_service_handle ibase_service_attach ('localhost''username''password');

ibase_backup($resource_service_handle'source_database''destination_file');

ibase_service_detach ($resource_service_handle); 
Y lo he cambiado por:

Código PHP:
$resource_service_handle ibase_service_attach (DB_NAMEDB_USERNAMEDB_PASSWORD) or die(ibase_errmsg());

    
ibase_backup($resource_service_handleDB_NAMEPATH_BK.SD."copia_.fbk") or die(ibase_errmsg());

    
ibase_service_detach ($resource_service_handle); 
Donde las constantes estan definidas y funcionan (dan acceso a la aplicacion). El error que me retorna es

localhost:/opt/lampp/htdocs/aplicacion_local/bd/basedatos.fdb
SYSDBA
masterkey
localhost:/opt/lampp/htdocs/aplicacion_local/bakups/copia_.fbk

Warning: ibase_service_attach() [function.ibase-service-attach]: Cannot attach to services manager service opt/lampp/htdocs/aplicacion_local/bd/basedatos.fdb:service_mgr is not defined in /opt/lampp/htdocs/aplicacion_local/controllers/backup.php on line 9

Warning: ibase_backup() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/aplicacion_local/controllers/backup.php on line 11

Warning: ibase_service_detach() expects parameter 1 to be resource, boolean given in /opt/lampp/htdocs/aplicacion_local/controllers/backup.php on line 13

De antemano muchas gracias!
Responder Con Cita
  #2  
Antiguo 02-11-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.757
Poder: 21
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Primero y principal: No se casi nada de PHP.

Veo que tu defines:
localhost:/opt/lampp/htdocs/aplicacion_local/bd/basedatos.fdb
y el error dice que no se puede conectar a:
opt/lampp/htdocs/aplicacion_local/bd/basedatos.fdb

Comprueba que las variables que tienes llegan a la función con los valores correctos.
Supongo que podrás poner algo asi como un ShowMessage(DB_NAME) antes de la función.
Responder Con Cita
  #3  
Antiguo 02-11-2011
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
Gracias por su respuesta, enseguida voy a revisar, y comento como fue
Responder Con Cita
  #4  
Antiguo 02-11-2011
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
bueno probe algo mas

Código PHP:
if (($service ibase_service_attach(DB_SERVERDB_USERNAMEDB_PASSWORD)) != FALSE) {
        
//retrieve server info
        
$server_info  ibase_server_info($serviceIBASE_SVC_SERVER_VERSION)
                      . 
' / '
                      
ibase_server_info($serviceIBASE_SVC_IMPLEMENTATION);
        
        
ibase_backup($serviceDB_NAMEDB_SERVER.":".PATH_BK.SD."basededatos_.fbk") or die(ibase_errmsg());
        
        
//detach from server (disconnect)
        
ibase_service_detach($service);
    }
    else {
        
$ib_error ibase_errmsg();
    }
    
    echo 
$server_info
Donde:

DB_NAME : localhost:/opt/lampp/htdocs/aplicacion/bd/basededatos.fdb
DB_USERNAME : SYSDBA
DB_PASSWORD : masterkey
PATH_BK : /opt/lampp/htdocs/aplicacion/bakups
DB_SERVER : localhost:/opt/lampp/htdocs/aplicacion/bakups/basededatos_.fbk

la cuestion es que no me genera error como tampoco crea el archivo de la copia de seguridad.

Agradezco la ayuda que me puedan brindar
Responder Con Cita
  #5  
Antiguo 02-11-2011
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.757
Poder: 21
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
Cita:
ibase_backup($service, DB_NAME, DB_SERVER.":".PATH_BK.SD."basededatos_.fbk") or die(ibase_errmsg());
En esta línea veo algo raro:

Se llama a la función ibase_backup y supongo que le pasas el parámetro origen y destino.

Origen = DB_NAME = localhost:/opt/lampp/htdocs/aplicacion/bd/basededatos.fdb: ok
Destino = DB_SERVER.":".PATH_BK.SD."basededatos_.fbk" = localhost:/opt/lampp/htdocs/aplicacion/bakups/basededatos_.fbk:/opt/lampp/htdocs/aplicacion/bakups.basededatos_.fbk: ERROR

Además, el backup siempre se hace a un disco local.
Cuando la haces con la línea de comando es
Código:
origen = IP:Path/nombre_db
destino = Path/nombre_bk
gbak -t origen destino
Ejemplo:
gbak -t 192.168.1.1:/bases/base.fdb C:\Backups\Backup.FBK
Si quieres que el backup esté en otro lugar, deberás hacerlo al disco local y luego copiarlo
Código:
gbak -t 192.168.1.1:/bases/base.fdb C:\Backups\Backup.FBK
copy C:\Backups\Backup.FBK \\ServidorBackup\Backups\Backup.FBK
Responder Con Cita
  #6  
Antiguo 02-11-2011
subzero subzero is offline
No confirmado
 
Registrado: ene 2004
Ubicación: Móntería - Córdoba - Colombia
Posts: 289
Poder: 0
subzero Va por buen camino
ok, voy a revisar esto ultimo, realmente agradezco tu interes en ayudarme.
Responder Con Cita
Respuesta



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
¿Copia de seguridad de BD SQL 2000 desde la aplicación? Blaster Conexión con bases de datos 2 02-01-2009 23:19:02
realizar copia de seguridad de bd interbase desde delphi ingabraham Firebird e Interbase 8 16-10-2007 19:02:01
Copia de Seguridad omarifr Windows 4 07-01-2006 22:22:15
Copia de tablas como copia de seguridad Mathom Varios 4 04-01-2006 10:19:57
Copia de seguridad y restablecer copia en paradox Sayuri Conexión con bases de datos 4 30-08-2005 18:08:37


La franja horaria es GMT +2. Ahora son las 19:57:25.


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