Обсуждение: pg_restore problem
I have a problem restoring our large database. This has only stared happening since we moved to 8.1.x We are currently on 8.1.3. We perform an over night dump of the database as follows; pg_dump -Ft $db | bzip2 > $db.dump.tbz This happens fine, without any errors. On our backup machine also running 8.1.3 we do the following; createdb $db bzip2 -d -c $db.dump.tbz | pg_restore -i -O -d $db However, after a while we get this error; pg_restore: [tar archiver] could not find header for file 3765.dat in tar archive Our bzip2ed database is 1.2G so it's not small. We also run the same procedure on a number of other smaller database and have no problems at all. However, we are now in the unhandy position of having our main operational database that we can backup, but not restore! Help.
Michael Andreasen <michael@dunlops.com> writes: > pg_dump -Ft $db | bzip2 > $db.dump.tbz > ... > pg_restore: [tar archiver] could not find header for file 3765.dat in > tar archive Does it work better if you use -Fc format? There was a similar report recently, which makes me think the tar-format code has got some kind of problem, but without a test case it's hard to look into it. regards, tom lane
I had similar problems with the tar format. 3 smaller databases worked, the biggest did not. Switching to -Fc fixed it for me. Sorry for not reporting this. Harco Tom Lane wrote: > Michael Andreasen <michael@dunlops.com> writes: > >> pg_dump -Ft $db | bzip2 > $db.dump.tbz >> ... >> pg_restore: [tar archiver] could not find header for file 3765.dat in >> tar archive >> > > Does it work better if you use -Fc format? There was a similar report > recently, which makes me think the tar-format code has got some kind > of problem, but without a test case it's hard to look into it. > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 3: Have you checked our extensive FAQ? > > http://www.postgresql.org/docs/faq > >