Re: Novice! How to run pg_dump from within Java?
От | Damian C |
---|---|
Тема | Re: Novice! How to run pg_dump from within Java? |
Дата | |
Msg-id | 2bbc8f530607261750o70141f8cv664cca2fa0d26e7e@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: Novice! How to run pg_dump from within Java? ("Michael Swierczek" <mike.swierczek@gmail.com>) |
Ответы |
Re: Novice! How to run pg_dump from within Java?
|
Список | pgsql-novice |
On 7/26/06, Michael Swierczek <mike.swierczek@gmail.com> wrote: > Damian, > I have a simple in-house application to do this. The code is > ugly, but it's all I need to get the job done. I've pasted a few > snippets below. You can use that to capture any messages that > pg_dump would otherwise print to the screen, to see what the problem > is. Michael, Thanks very much for your response. I actually didn't need it to solve the issue, but no doubt I will be using your suggested technique extensively as we move towards production-ready status. Thanks. Just to record the answer for future googlers!!! Here is how I got it to work ... Firstly - refer to my previous post that has the "nearly working" code snip. The issue was a missing password. The arguments that are passed to the pg_dump have plenty of information (username, host, port, etc), but no password. So when invoking the process I set a password into the PGPASSWORD environment variable as follows... <snip> ProcessBuilder pb = new ProcessBuilder(cmds); Map<String, String> env = pb.environment(); env.put("PGPASSWORD", "my-pg-password-goes-here"); Process process = pb.start(); </snip> Obviously the above solution is brutal and not-production-ready, but it did confirm the issue. Setting PGPASSWORD environment variable is NOT the recommended technique (see http://www.postgresql.org/docs/8.1/interactive/libpq-envars.html). Many thanks, -Damian
В списке pgsql-novice по дате отправления: