From: | "Trevor Talbot" <quension(at)gmail(dot)com> |
---|---|
To: | "Garry Saddington" <garry(at)schoolteachers(dot)co(dot)uk> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: execute pg_dump via python |
Date: | 2007-10-25 21:23:37 |
Message-ID: | 90bce5730710251423q18dc81ect3dd00735b8382da7@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On 10/25/07, Garry Saddington <garry(at)schoolteachers(dot)co(dot)uk> wrote:
> I am using zope on windows with an external python method to backup my
> database. I am struggling to run the following command:
>
> pg_dump.exe database > file
> subprocess.Popen(['c:/dir/dir/pg_dump.exe','database','>','c:/dir/dir/output
> file'])
>
> The command string works perfectly in a terminal. Does anyone know how I
> should be doing this? I get no errors or traceback when I try the method
> through Zope.
This is probably a Python question more than anything else. I don't
know Python, but two things come to mind:
* It probably does not open a command shell, so file redirection ('>')
does not work. Use pg_dump's -f option instead.
* Things named "popen" usually open a pair of pipes for programmatic
input and output, meaning your app is expected to read the output of
pg_dump directly, as if you were going to display it on the screen or
write to a file yourself.
I'd suggest asking in a Python group about executing external
processes and checking for errors.
From | Date | Subject | |
---|---|---|---|
Next Message | Scott Marlowe | 2007-10-25 21:42:40 | Re: select count() out of memory |
Previous Message | Joanne Salerno | 2007-10-25 21:13:29 | Pgaccess |