Re: Accidentally truncated pg_type - Mailing list pgsql-general

From Craig Ringer
Subject Re: Accidentally truncated pg_type
Date
Msg-id 4E1BA267.5040905@postnewspapers.com.au
Whole thread Raw
In response to Accidentally truncated pg_type  ("Matthew Byrne" <matt@byrney.com>)
List pgsql-general
On 12/07/11 08:12, Matthew Byrne wrote:
> I have a large database full of irreplaceable data, and due to a
> ridiculous happenstance I accidentally executed this code (as a superuser,
> of course):
>
> DELETE FROM pg_catalog.pg_type;
>
> Now the database is *seriously* unhappy - every SQL command returns an
> error message.  How do I get at my data?

Do not attempt any recovery yet. STOP doing whatever you are doing. If
any programs are accessing the database, stop them.

Make a file-system level copy of your database ***NOW***. Put one
duplicate on a CD, external hard disk or other media you can completely
remove from your computer and put it somewhere safe. Keep the duplicate
copy on your hard drive to attempt recovery with.

Personally I'd make a copy, stop the postmaster, and make a second copy.
That's just because I don't know which would work out better. Up to you.

I don't suppose you have any backups of any older versions of the
database? If they are, are they PITR backups or are they pg_dump backups?

Have you already attempted any recovery steps? Document them in detail
if you have.

If this database is in any way important to you, you should consider
hiring an experienced professional to assist you with recovery. See:

  http://www.postgresql.org/support/professional_support

--
Craig Ringer

pgsql-general by date:

Previous
From: Chris Travers
Date:
Subject: Re: Interesting article, Facebook woes using MySQL
Next
From: Craig Ringer
Date:
Subject: Re: Accidentally truncated pg_type