Corrupted database - how to recover - Mailing list pgsql-admin

From Johann Spies
Subject Corrupted database - how to recover
Date
Msg-id 20100527073404.GA32267@sun.ac.za
Whole thread Raw
Responses Re: Corrupted database - how to recover
List pgsql-admin
After two disks on our raid-5 system failed causing a filesystem
failure.

We could get one online again and the filesystem is at present usable
but  I cannot start postgresql at the moment:

$ /usr/lib/postgresql/8.3/bin/postgres --single -D /etc/postgresql/8.3/main/
2010-05-27 09:22:48 SAST FATAL:  could not stat directory "base/16400": Structure needs cleaning
2010-05-27 09:22:48 SAST CONTEXT:  xlog redo insert: rel 1663/16400/16438; tid 10960/41

in 'base' I see

drwx------ 10 postgres postgres  102 2010-04-22 15:09 .
drwx------ 10 postgres postgres 4096 2010-05-27 09:29 ..
drwx------  2 postgres postgres 4096 2010-05-20 02:11 1
drwx------  2 postgres postgres 4096 2010-04-22 15:07 11510
??????????  ? ?        ?           ?                ? 16388
drwx------  2 postgres postgres 4096 2010-05-20 02:11 16389
drwx------  2 postgres postgres 4096 2010-05-20 02:11 16390
drwx------  2 postgres postgres 4096 2010-05-20 02:11 16391
??????????  ? ?        ?           ?                ? 16400

I can just move the data-directory, do an initdb and use an older dump
to repair the database as it was some time ago.  Fortunately the data is
not mission critical.  But what if it was.

How do I recover from a situation like this?

Regards
Johann
--
Johann Spies          Telefoon: 021-808 4599
Informasietegnologie, Universiteit van Stellenbosch

     "All that the Father giveth me shall come to me; and
      him that cometh to me I will in no wise cast out."
                                      John 6:37

pgsql-admin by date:

Previous
From: alvherre
Date:
Subject: Re: command tag logging
Next
From: Andreas Schmitz
Date:
Subject: Re: Corrupted database - how to recover