Re: Accessing dead rows within postgresql

From: Joshua Tolley <eggyknap(at)gmail(dot)com>
To: aaronenabs <aaronenabs(at)btconnect(dot)com>
Cc: pgsql-novice(at)postgresql(dot)org
Subject: Re: Accessing dead rows within postgresql
Date: 2011-03-17 17:40:08
Message-ID: 4d8247a0.a8d7e70a.7063.36a6@mx.google.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

On Wed, Mar 16, 2011 at 11:19:38AM -0700, aaronenabs wrote:
> I would like to ask how do i work around this, Basically from my research i
> have found out that PostgreSQL does not securely delete data from its
> tables, rows, columns or database. Instead it is deleted from the user
> interface and kept hidden from the user till it is overwritten by bigger
> bytes of data.
>
> What i would like to achieve or do is to delete data and locate it using the
> source code or any other means as when data is deleted it still remains in
> parts of the DBMS.

Yes, old versions of modified data still exist on disk, until vacuum reclaims
the pages and they're re-used for new data. PostgreSQL won't let you get to
that data once a newer version is committed, so in order to see it you'll need
to modify postgres, or write your own program to find it.

It's interesting you should describe this as "securely delet[ing]" the data.
If someone can get at the old versions of data, they have access to your data
files, and you've probably got bigger security problems than someone finding
old data.

--
Joshua Tolley / eggyknap
End Point Corporation
http://www.endpoint.com

In response to

Browse pgsql-novice by date

  From Date Subject
Next Message aaronenabs 2011-03-17 21:27:50 Re: Accessing dead rows within postgresql
Previous Message siva kiran balijepalli 2011-03-17 05:05:34 FETCH in postgresql 8.4