Re: How to do pg_dump + pg_restore within Perl script? - Mailing list pgsql-general

From Greg Sabino Mullane
Subject Re: How to do pg_dump + pg_restore within Perl script?
Date
Msg-id 73ed83c546f669a7d2ec060d358a7827@biglumber.com
Whole thread Raw
In response to How to do pg_dump + pg_restore within Perl script?  (Kynn Jones <kynnjo@gmail.com>)
Responses Re: How to do pg_dump + pg_restore within Perl script?  ("Joshua D. Drake" <jd@commandprompt.com>)
Re: How to do pg_dump + pg_restore within Perl script?  (Kynn Jones <kynnjo@gmail.com>)
Re: How to do pg_dump + pg_restore within Perl script?  ("Joshua D. Drake" <jd@commandprompt.com>)
List pgsql-general
-----BEGIN PGP SIGNED MESSAGE-----
Hash: RIPEMD160


> I would like to replicate the following Unix pipe within a Perl script,
> perhaps using DBD::Pg:
>
>
> % pg_dump -Z9 -Fc -U <DB_USER> <FROM_DB> | pg_restore -v -d <TO_DB> -p
> <SSH_TUNNEL_PORT> -h localhost -U <DB_USER>
>
> Of course, I can try to use Perl's system, and the like, to run this pipe
> verbatim, but I this as a last-resort approach.
>
> Is there a more direct way?

If you mean emulate the pg_dump, no. pg_dump does a *lot* of stuff behind
the scenes, and trying to rewrite all that in Perl would be madness. And I
say that having written some serious madness into DBD::Pg already :). Stick
with the shell script, even if it means calling system.

If you simply want to avoid the pipes, you can think about calling pg_dump
from the remote box, using a authorized_keys with a specific command in it,
and other tricks, but nothing will be as straightforward and error proof
as the line you gave, I suspect.

- --
Greg Sabino Mullane greg@turnstep.com
End Point Corporation http://www.endpoint.com/
PGP Key: 0x14964AC8 201005101331
http://biglumber.com/x/web?pk=2529DF6AB8F79407E94445B4BC9B906714964AC8
-----BEGIN PGP SIGNATURE-----

iEYEAREDAAYFAkvoQ20ACgkQvJuQZxSWSsiaqQCgv6698Bo37q7cVuVngZJez11M
4nEAoOmYW8EFDbjBFtAR4qDZLmHRhNPa
=NUq2
-----END PGP SIGNATURE-----



pgsql-general by date:

Previous
From: John Gage
Date:
Subject: Re: Documentation availability as a single page of text
Next
From: Alvaro Herrera
Date:
Subject: Re: PostgreSQL 9.0 - support for RANGE value PRECEDING window functions