From: | Alvaro Herrera <alvherre(at)commandprompt(dot)com> |
---|---|
To: | Alejandro Roberto Morales Arce <alejandro(dot)morales(at)interalia(dot)net> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Recuperar datos borrados |
Date: | 2007-07-19 15:57:58 |
Message-ID: | 20070719155758.GI6538@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Alejandro Roberto Morales Arce escribió:
> Hola Buenas tardes, mi duda es la siguiente:
> Necesito recuperar unos datos borrados por accidente; segui un hilo del
> mailing list donde indican un procedimiento para recuperar el archivo
> fisico.
> el hilo es el
> siguiente:http://archives.postgresql.org/pgsql-admin/2005-01/msg00176.php
> Bien ya tengo el archivo fisico, pero mi problema es como interpretar
> las fechas o mas bien el timestamp de dicho archivo, ya busco
> información sobre el almacenacimiento físico,
> pero no encuentro la documentación donde explique algo sobre eso.
Busca pg_filedump (http://sources.redhat.com/ creo), con eso puedes
desplegar las tuplas en la tabla. Con eso puedes averiguar el XID de la
transaccion que los borró (xmax); luego vas a pg_clog y marcas esa
transacción "abortada". Claro que ahora que lo pienso, también tendrás
que cambiar los datos y resetear el hint bit "Xmax committed", tupla por
tupla.
(Una alternativa a esto ultimo seria usar una version parchada de
Postgres que ignore los hint bits; con esa examinas la tabla, le haces
vacuum, y luego vuelves a la version sin parchar).
Como dijo Mario, asegurate que no le haces vacuum a esa tabla, o estas
frito. (Hint: desactiva autovacuum tambien, de haberlo).
Es harto trabajo en todo caso. Suerte!
--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.
From | Date | Subject | |
---|---|---|---|
Next Message | Miguel Rodríguez Penabad | 2007-07-19 17:46:51 | Re: Uso de los Indices |
Previous Message | Marco Castillo | 2007-07-19 15:53:00 | Re: acceso via SMS |