Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

pg_dump con php en windows

Estas en el tema de pg_dump con php en windows en el foro de PostgreSQL en Foros del Web. El problema basicamente es que el pg_dump de postgres para Win32 no deja meter como parametro la contraseña, lo cual no permite ejecutar el pg_dump ...
  #1 (permalink)  
Antiguo 06/07/2006, 05:12
 
Fecha de Ingreso: julio-2006
Mensajes: 2
Antigüedad: 18 años, 5 meses
Puntos: 0
pg_dump con php en windows

El problema basicamente es que el pg_dump de postgres para Win32 no deja meter como parametro la contraseña, lo cual no permite ejecutar el pg_dump desde php. SI corre desde linea de comandos(cmd.exe) ya que cuando ejecuto la sentencia:
c:\Archivos de Programa\PostgreSQL\8.0\bin> (o donde este la carpeta bin de postgres)

y escribimos : pg_dump nombre_database > c:\nombre_del_respaldo.bak

me pide nombre de usuario:
me pide password:

y me genera sin problema el backup de la BD.

pero si llamo al pg_dump desde php tendria que usar algo asi:
[recomiendo que copien el archivo pg_dump.exe al C:\ para cuestiones de prueba]
<?php
system('\! C:\pg_dump BD > C:\BD.sql');
?>
corre, crea el archivito BD.sql pero en blanco. ya que no puedo enviar la contraseña...[el nombre de usuario se envia con -U user]

ahora...explorando por internet encontre un truquillo....pero jala....

editae el archivo pg_hba.conf qne este en C:\Archivos de programa\PostgreSQL\8.0\data\ buscar la linea:
host all all 127.0.0.1/32 md5
y remplazar por:
#host all all 127.0.0.1/32 trust
donde dice 'md5' cambialo a 'trust' con esto ya no te pide el password, despues reinicia el servidor de postgres.
pero dicen que es un grann problema de seguridad...al hacer eso..estoy dejando un gran agujero en mi DB...lo cual no es bueno.
para hacer dar:
<php?
system('C:\respaldo.bat');
?>
se crean un archivito en el C:\ llamado respaldo.bat [o cualquier nombre y lo llaman desde php]y dentro le ponen esta unica linea:
C:\pg_dump -C -D -O -U [USER] [nom_BD] > c:\DB.sql
EJemplo: C:\pg_dump -C -D -O -U postgres myBD > c:\backup.sql
y hagan correr su scrip PHP y listo. funciona por que desabilitamos que nos pida password.

ahora...si alguien sabe una manera correcta y SEGURA de sacar backups desde PHP porfa AVISENME!!! estoy vaaarios dias investigando y les comparto mi experiencia aprendida . BYE BYE

Última edición por vicox19; 06/07/2006 a las 05:22
  #2 (permalink)  
Antiguo 06/07/2006, 19:55
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 20 años
Puntos: 7
Lo hiciste inseguro desde el momento que decidiste hacer un pg_dump desde PHP.

No sé si te sirva de algo, pero podrías buscar información sobre pgpass.conf (debe tener permisos sólo para el usuario que ejecuta la tarea)

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #3 (permalink)  
Antiguo 07/07/2006, 07:28
 
Fecha de Ingreso: julio-2006
Mensajes: 2
Antigüedad: 18 años, 5 meses
Puntos: 0
por mas que busco el archivo pgpass.conf en mi pc..no existe...quiza tenga que crearlo...pero cual es su estructura?? y de donde lo puedo bajar?? o quiza me lo puedes pasar si lo tienes...
Saludos.
  #4 (permalink)  
Antiguo 10/07/2006, 15:30
Avatar de xknown  
Fecha de Ingreso: diciembre-2004
Ubicación: Cusco - Perú
Mensajes: 2.248
Antigüedad: 20 años
Puntos: 7
No sé si leiste bien mi mensaje, pero te sugerí "buscar información sobre pgpass.conf". (está en el manual de postgres)

Saludos
__________________
Alex Concha
Buayacorp - Programación y Diseño
  #5 (permalink)  
Antiguo 11/04/2008, 16:25
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años, 8 meses
Puntos: 0
Pregunta Re: pg_dump con php en windows

Creo que tengo el mismo proplema...

Necesito saber si puedo ejecutar el PG_DUMP y en la misma línea ingresar el password.

Gracias y que Dios Bendiga a quien me pueda ayudar!
  #6 (permalink)  
Antiguo 12/04/2008, 04:48
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 10 meses
Puntos: 13
Re: pg_dump con php en windows

bueno, xknown ya os ha dado la solucion, ahora mirar leer sobre pg_pass y si despues teneis dudas preguntais.

Salu2
  #7 (permalink)  
Antiguo 14/04/2008, 13:15
Avatar de Sergestux  
Fecha de Ingreso: agosto-2007
Ubicación: Tapachula
Mensajes: 1.218
Antigüedad: 17 años, 4 meses
Puntos: 20
Re: pg_dump con php en windows

Vaya estas de suerte ahi te va un script php para hacer el dump, pruebalo y comentalo

scrypt for backup and restore postgres database

Pero si te fijas en el comentario final, alguien escribio que el script no puede crear secuencias para las llaves primarias incrementales:
Cita:

The script cant create the sequences for the autoincrement primary key...
bueno aunque el script sea del 2005, estoy seguro te da la pauta a seguir
  #8 (permalink)  
Antiguo 21/04/2008, 13:56
 
Fecha de Ingreso: abril-2008
Mensajes: 15
Antigüedad: 16 años, 8 meses
Puntos: 0
Pregunta Re: pg_dump con php en windows

Saludos seyko: me hace falta que me puedas dar una ayuda a como trabajar con pg_passwd pues no entendi muy bien lo del manual de postgres.
Gracias de antemano
  #9 (permalink)  
Antiguo 22/04/2008, 05:17
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 10 meses
Puntos: 13
Re: pg_dump con php en windows

Basicamente se basa en crear el archivo pg_pass y postgres coge de ahi la contraseña, asi no se la tienes que introduccir para hacer el backup.

Un saludo
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:23.