Skip site navigation (1) Skip section navigation (2)

Re: Database backup

From: "Nigel J(dot) Andrews" <nandrews(at)investsystems(dot)co(dot)uk>
To: Alexandros Perdikomatis <menippos(at)otenet(dot)gr>
Cc: pgsql-help(at)postgresql(dot)org, "D'Arcy J(dot)M(dot) Cain" <darcy(at)druid(dot)net>,pgsql-interfaces(at)postgresql(dot)org
Subject: Re: Database backup
Date: 2003-01-19 18:23:42
Message-ID: (view raw or whole thread)
Lists: 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

In response to


pgsql-interfaces by date

Next:From: Alexandros PerdikomatisDate: 2003-01-20 07:37:03
Subject: Re: Database backup
Previous:From: Alexandros PerdikomatisDate: 2003-01-19 15:35:38
Subject: Re: Database backup

Privacy Policy | About PostgreSQL
Copyright © 1996-2015 The PostgreSQL Global Development Group