Power Builder - Backup automático

 
Vista:

Backup automático

Publicado por Juan Carlos (7 intervenciones) el 16/03/2010 01:51:57
Hola, quería saber si es que se pueden crear backups mediante una opción del sistema, si existe algún script que se inserte al power builder, algo... ya sin la necesidad de tener que ir al motor de BD, sino defrente.
De preferencia que sea una interacción del PB con el postgres, pero acepto todas las respuestas (please amigos)
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Backup automático

Publicado por miguell (108 intervenciones) el 20/03/2010 16:27:53
no conozco postgres, pero si es posible ......

1) crear procedimientos almacenados, podrías probar llamar a las funciones que hay en postgres desde un stored procedure (=procedim. almacenado) y llamarlo desde powerbuilder.

http://www.postgresql.org/docs/8.3/static/functions-admin.html

2) también, si sabes qué sentencia sql tienes que ejecutar, puedes investigar si lo puedes ejecutar con sql dinámico:

execute immediate :ls_mi_sentencia_en_cadena;

(busca "execute immediate" en ayuda de pb)

3) otra posibilidad que puedes investigar es si existen funciones de API del postgres que puedes declarar como funciones externos en pb y llamarlos

4) como último podrías también usar el comando 'run' de pb para ejecutar algun comando de línea de postgres para hacer el backup.

espero que te ayude
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Backup automático

Publicado por zerojano (72 intervenciones) el 22/03/2010 14:06:22
Aca tienes unos ejemplos de crear un backup y restaurarlo

///////************* BACKUP
string ls_sql,ls_bd,ls_name,ls_path

ls_bd='Master'
ls_path='C:\DB\'

ls_name=ls_bd + '_01.bak'

SQLCA.AutoCommit=TRUE

ls_sql="BACKUP DATABASE " + ls_bd + " TO DISK = '" + ls_path + ls_name + "' WITH FORMAT"

EXECUTE IMMEDIATE :ls_sql USING SQLCA;

//////************** RESTORE
string ls_sql,ls_bd,ls_path

ls_bd='Master'
ls_path='C:\DB\Master_01.bak'

SQLCA.AutoCommit=TRUE

ls_sql="RESTORE DATABASE " + ls_bd + " FROM DISK = '" + ls_path + "'"

EXECUTE IMMEDIATE :ls_sql USING SQLCA;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Backup automático

Publicado por Juan Carlos (5 intervenciones) el 25/03/2010 23:50:16
Hola zerojano, como estas? Gracias por la información que me has enviado, pero no me resulta, pongo el código que has escrito y no obtengo ningún resultado. No sé, mira, siesque tienes ejemplos resueltos te agradecería me ayudes porq es algo que necesito urgente. Yo estoy tratando de crear el backup por el power builder 9.0, la BD esta en postgres 8.2.
Espero tu respuesta, Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Backup automático

Publicado por miguell (108 intervenciones) el 29/03/2010 18:04:37
después del
execute immediate, investiga en el sqlca.sqlerrtext / sqlca.sqlerrcode para obtener más información sobre el 'porqué' de que no te funciona.

(posiblemente no podrás hacer el backup si hay gente conectada a la bd y ejecutando / bloqueando cosas, pero no estoy seguro como va eso con postgres)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar