On 10/8/07, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> "Mike C" <smith.not.western@gmail.com> writes:
> > I have a corrupt database. I copied the database directory offsite and
> > restored from a backup. I'm now trying to recover data in the corrupt
> > database added since the last backup. Any advice on how to approach
> > this?
>
> If you're lucky, REINDEX might solve your problems. The messages you
> showed are all about index corruption, which REINDEX can fix. If you've
> got corruption in the tables themselves then you might be screwed, but
> try reindexing and see what happens ...
My problem is that I can't even start postmaster to perform the
reindex on now. As soon as I try start (via pg_ctl, 8.1.10):
postgres_report[24165]: [1-1] LOG: database system was interrupted
while in recovery at 2007-10-04 12:32:46 NZST
postgres_report[24165]: [1-2] HINT: This probably means that some
data is corrupted and you will have to use the last backup for
recovery.
postgres_report[24165]: [2-1] LOG: checkpoint record is at 520/66DDD00
postgres_report[24165]: [3-1] LOG: redo record is at 520/66DDD00;
undo record is at 0/0; shutdown FALSE
postgres_report[24165]: [4-1] LOG: next transaction ID: 334746303;
next OID: 32829
postgres_report[24165]: [5-1] LOG: next MultiXactId: 1; next
MultiXactOffset: 0
postgres_report[24165]: [6-1] LOG: database system was not properly
shut down; automatic recovery in progress
postgres_report[24165]: [7-1] LOG: redo starts at 520/66DDD50
postgres_report[24165]: [8-1] LOG: record with zero length at 520/6E2D130
postgres_report[24165]: [9-1] LOG: redo done at 520/6E2D100
postgres_report[24165]: [10-1] PANIC: failed to re-find parent key
in "24977" for split pages 230790/263989
postgres_report[24164]: [1-1] LOG: startup process (PID 24165) was
terminated by signal 6
Oct 4 12:32:57 serena postgres_report[24164]: [2-1] LOG: aborting
startup due to startup process failure
Thanks,
Mike