Re: COPY TO '|gzip > /my/cool/file.gz'
| От | Craig Ringer |
|---|---|
| Тема | Re: COPY TO '|gzip > /my/cool/file.gz' |
| Дата | |
| Msg-id | 4E279CE1.2040006@postnewspapers.com.au обсуждение |
| Ответ на | COPY TO '|gzip > /my/cool/file.gz' (<david.sahagian@emc.com>) |
| Список | pgsql-general |
On 21/07/11 01:59, david.sahagian@emc.com wrote: > From May 31, 2006; 12:03pm . . . > > "It struck me that we are missing a feature that's fairly common in Unix programs. > Perhaps COPY ought to have the ability to pipe its output to a shell command, > or read input from a shell command. " > Maybe something like: > COPY mytable TO '| gzip >/home/tgl/mytable.dump.gz'; > > Is such a feature (ie being able to tell postgres to write a compressed file via COPY TO) being worked on ? Not that I've heard of. In addition to the hint given about using copy to stdout from a "psql -c" invocation, there is another option. You can create a named pipe (fifo) file node and use COPY TO to write to it. eg: $ mkfifo gzfifo; gzip < gzfifo > out.gz & $ psql -c "COPY tablename TO '/server/path/to/gzfifo';" gzip will automatically terminate when the output file is closed. The fifo will not be removed and can be re-used. Supporting COPY to a pipe would be interesting, though the security implications would need plenty of thought. -- Craig Ringer
В списке pgsql-general по дате отправления: