On Fri, Dec 20, 2013 at 5:28 AM, Anand Kumar, Karthik <Karthik.AnandKumar@xxxxxxxxxxxxxx> wrote: > HI, > > We have an issue with possibly corrupt data in our postgresql server. Errors > like: > > ERROR: index "photos_p00_n2" contains unexpected zero page at block 0 > ERROR: invalid page header in block 12707 of relation > pg_tblspc/5020557/PG_9.1_201105231/16393/9014673 > > Thanks to all the suggestions from this list. We are in the process of > moving our database out to a different server, and we'll then set > zero_dameged_pages to on, run a full vacuum and reindex. > > The question I have is – what is the best method to transfer the data over > to ensure we don't copy over bad/corrupt data? I would think a filesystem > based copy (rsync, etc) should be avoided, and a pg_dump with a new initdb > is best? You should go with pg_dump if you are able to get a clean dump. Such block errors happen because of hardware issues, so you are not safe from additional failures that might happen while you do a copy of the existing data folder to a new system. Regards, -- Michael -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general