Re: Database backup - Mailing list pgsql-interfaces

From Nigel J. Andrews
Subject Re: Database backup
Date
Msg-id Pine.LNX.4.21.0301191820010.3067-100000@ponder.fairway2k.co.uk
Whole thread Raw
In response to Re: Database backup  (Alexandros Perdikomatis <menippos@otenet.gr>)
Responses Re: Database backup
List pgsql-interfaces
On Sun, 19 Jan 2003, Alexandros Perdikomatis wrote:

> Óôéò Êõñ 19 Éáí 2003 04:59, ï/ç D'Arcy J.M. Cain Ýãñáøå:
> > Redirecting to help list as it seems more appropriate.
> >
> > On Saturday 18 January 2003 09:17, Alexandros Perdikomatis wrote:
> > > Question: Am I too stupid to use tar?
> >
> > I'm sure not but you may misunderstand what tar does.  Tar is for storing a
> > collection of files into an archive.  It expects to find the list of files
> > on the command line in one form or another.  If you don't write to a file
> > first then all you have is a stream of data, not a file.
> >
> > > Some time I had no space on the filesystem to copy all the data in
> > > command mode (pg_dump) so I thought to pipe pg_dump to tar using a scsi
> > > tape archiver as output (/dev/rmt0).
> > > Why doesn't work?
> >
> > What exactly was the problem?  You may just have a device selection issue.
> > What system is this on?
>
> Thanks for the reply.
> I think I understand what you mean, I just thought that instead of a file
> input, we could have a pipe input.
> It runs on a SuSE linux 6.4 (you may ask why this old version, I updated what
> was necesary, I like it becouse I have full greek support) and the archiver
> is an old conner DDS-2 scsi tape streamer which is known on the operating
> system as /dev/st0 by the kernel whith a symbolic link to /dev/rmt0.
> When I pg_dump on a file, of cource there's no problem. I restore also
> correctly.
> But I would like to pipe this procces. For example: if we type the command:
> # tar cvf /dev/rmt0 *
> we're going to have all the files in the tree below to the tape.
> How can I pipe the output of the pg_dump to it?

Well, you could do:

pg_dump ... > /dev/rmt0

or if you want to set block size:

pg_dump ... | dd of=/dev/rmt0 obs=1k

Basically, you're trying to make it too complicated, tar will archive one file
but would you really use something like:

tar -cf archived-file.tar unarchived-file

unless the unarchived-file name was generated automatically and it just so
happened that only one file existed at that time?

If you really do want something tar try cpio instead.


--
Nigel J. Andrews



pgsql-interfaces by date:

Previous
From: Alexandros Perdikomatis
Date:
Subject: Re: Database backup
Next
From: Alexandros Perdikomatis
Date:
Subject: Re: Database backup