Thread: Filesystem crash - corupted database

Filesystem crash - corupted database

From
Martin Bednář
Date:
Hi,

It's possible to extract data directly from data files ?
I have two tablespaces one for data and one for indexes.
After filesystem crash I lost my /var/lib/postgresql/data folder :( All
data is in /lost+found :(, I found folders with data and index tablespe
that looks ok.
It's possible to directly access these files and extract data as CSV for
example ?
Or it's possible "mount" these tablespaces to new database instance ?

Thnx for advice
Bedy

btw: I know - restore from backups, but DB is too big, and I have
backups 6days ago.


Re: Filesystem crash - corupted database

From
"Scott Marlowe"
Date:
On 9/26/07, Martin Bednář <bednar@triax.cz> wrote:
> Hi,
>
> It's possible to extract data directly from data files ?
> I have two tablespaces one for data and one for indexes.
> After filesystem crash I lost my /var/lib/postgresql/data folder :( All
> data is in /lost+found :(, I found folders with data and index tablespe
> that looks ok.
> It's possible to directly access these files and extract data as CSV for
> example ?
> Or it's possible "mount" these tablespaces to new database instance ?

You can read them with a hex dump program, but that's about it.  The
data may well be too corrupted to use anyway.  OTOH, if the files are
intact and you can rename them back to what they were you might be
able to get your db back up.  But I wouldn't count on it.

> btw: I know - restore from backups, but DB is too big, and I have
> backups 6days ago.

That's why there's PITR.  If you had been backing up with PITR, then
you could roll forward your standby machine and be right back up.

Use this to make a case to the powers that be that you need better
backup procedures and hardware to handle your data.  The cost of your
data is much higher than the cost of the hardware it lives on.

Re: Filesystem crash - corupted database

From
Martijn van Oosterhout
Date:
On Wed, Sep 26, 2007 at 11:59:28AM +0200, Martin Bedná? wrote:
> Hi,
>
> It's possible to extract data directly from data files ?
> I have two tablespaces one for data and one for indexes.
> After filesystem crash I lost my /var/lib/postgresql/data folder :( All
> data is in /lost+found :(, I found folders with data and index tablespe
> that looks ok.
> It's possible to directly access these files and extract data as CSV for
> example ?
> Or it's possible "mount" these tablespaces to new database instance ?

In theory if you resurrect the schema exactly as it was, and then copy
the old files in place, you *may* be able to read them. However, you're
going to have trouble with non-existing XIDs.  Yo umight be able to
recreate the XLOG/CLOGs but the whether it's going to be consistant is
anyones guess...

Have a nice day,
--
Martijn van Oosterhout   <kleptog@svana.org>   http://svana.org/kleptog/
> From each according to his ability. To each according to his ability to litigate.

Attachment