Re: strange message from pg_dumpall - Mailing list pgsql-general

From T.J. Adami
Subject Re: strange message from pg_dumpall
Date
Msg-id 1193829170.957490.19800@y42g2000hsy.googlegroups.com
Whole thread Raw
In response to strange message from pg_dumpall  (Joao Miguel Ferreira <joao.mc.ferreira@criticalsoftware.com>)
List pgsql-general
On 31 out, 06:56, joao.mc.ferre...@criticalsoftware.com (Joao Miguel
Ferreira) wrote:
> Hello all,
>
> I got surprised by this message:
>
> -------------------------------------
> The program "pg_dump" is needed by pg_dumpall but was not found in the
> same directory as "/usr/bin/pg_dumpall".
> Check your installation.
> --------------------------------------
>
> It's quite strange because I'm quite the pg_* binaries are well
> installed:
>
> ----------------------------------------
> $ ls -la /usr/bin/ | grep pg_
> -rwxr-xr-x    1 admin    root        16632 Oct 16 17:39 pg_config
> -rwxr-xr-x    1 admin    root        16636 Oct 16 17:39 pg_controldata
> -rwxr-xr-x    1 admin    root        24880 Oct 16 17:39 pg_ctl
> -rwxr-xr-x    1 admin    root       187996 Oct 16 17:39 pg_dump
> -rwxr-xr-x    1 admin    root        43444 Oct 16 17:39 pg_dumpall
> -rwxr-xr-x    1 admin    root        23020 Oct 16 17:39 pg_resetxlog
> -rwxr-xr-x    1 admin    root        84460 Oct 16 17:39 pg_restore
> $
> ----------------------------------------
>
> This is what I do:
>
> system("su postgres -c \"pg_dumpall --clean > some_file\"");
>
> this is run from within a Perl module called from within a Perl script.
>
> I've tried the same command directlly on the shell and it works fine.
> But from the perl script it complaints about pg_dump !!!???
>
> I've even tested both commands directlly on the cmd line and they work
> properlly !
>
> any ideas ?
>
> thx
> joao
>
> ---------------------------(end of broadcast)---------------------------
> TIP 2: Don't 'kill -9' the postmaster

Did you try to create a simple batch file and call it with sh?

pgdumpall.sh:
su -c "pg_dumpall --clean > some_file" postgres

And inside your code:
system("sh pgdumpall.sh");

... it's one idea... I had some problemas on other OS like windows,
when I need to create a batch to call some executables that aren't at
the same path of my application.


pgsql-general by date:

Previous
From: "T.J. Adami"
Date:
Subject: Join between tables of two or more databases
Next
From: Tom Lane
Date:
Subject: Re: strange message from pg_dumpall