From: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
---|---|
To: | Guillermo Garviso Aubá <tiotushi(at)hotmail(dot)com> |
Cc: | "arpug(at)postgresql(dot)org" <arpug(at)postgresql(dot)org>, "pgsql-es-ayuda(at)postgresql(dot)org" <pgsql-es-ayuda(at)postgresql(dot)org>, "pgsql-es-fomento(at)postgresql(dot)org" <pgsql-es-fomento(at)postgresql(dot)org> |
Subject: | Re: [pgsql-es-ayuda] Rescatar BD no respaldada |
Date: | 2015-04-23 19:45:03 |
Message-ID: | 20150423194503.GM4369@alvh.no-ip.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | arpug pgsql-es-ayuda pgsql-es-fomento |
Guillermo Garviso Aubá escribió:
> Buenos Dias, Soy Guillermo y tengo el presente problema "heredado", tenemos un servidor que trabaja con CentOS y PostGreSQL 8.3, el cual se quemo y por motivos que desconozco, el administrador de la base de datos nunca pudo generar los backups de las mismas, para lo cual ahora me encuentro yo con el problema de como rescatar la BD.
> Lo que actualmente hice es montar el disco mediante USB a mi PC con Windows mediante Ext2Fsd, en el cual busco extraer el archivo directamente de la carpeta de Postgres, pero es acá donde no manejo el sistema, para lo cual les solicito su ayuda con este tema.
> Lo que busco es extraer el archivo de la BD de Postgres del Disco Externo con Linux en Windows y poder transformarlo a un formato exportable/importable en otro servidor con Postgres, nose si esto sera técnicamente posible, de lo contrario agradecería me indique algún modo de solución al problema para poder extraer la BD de un Linux que no esta operativo, Muchas Gracias.
Paso número cero: crea un respaldo físico del disco que sacaste del
servidor quemado. No te ahorres este paso, a menos que valores poco los
datos. Si "es que no tengo espacio en disco", compra uno nuevo.
Paso uno: encontrar el PGDATA (directorio de datos). Necesitas todos
los archivos que están dentro del directorio de datos, y además todos
los archivos que estén en directorios de tablespaces. Para encontrar el
directorio de datos puedes buscar un directorio llamado "pg_global"; el
directorio que lo contiene es el directorio de datos. A continuación,
mira el subdirectorio pg_tblspc: cada tablespace tiene un symlink (o en
Windows, un junction) ahí dentro. Si está vacío, entonces eureka ya
tienes todo.
Paso dos: necesitas un Postgres compilado igual que el que tenía el
servidor quemado, y levantar el servicio haciendo que su pgdata apunte
al directorio de datos. No te sirve correr Postgres en Linux, porque el
directorio de datos no es compatible. [No se te ocurra hacer initdb]
Paso tres: ya que el servicio está corriendo con los datos antiguos, haz
un respaldo completo con pg_dump/pg_dumpall y restaura en un servidor
que hayas forrado previamente en kevlar.
--
Álvaro Herrera http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Enrique Escobar | 2015-04-23 19:49:02 | Re: [pgsql-es-ayuda] Rescatar BD no respaldada |
Previous Message | Guillermo Garviso Aubá | 2015-04-23 15:04:23 | Rescatar BD no respaldada |
From | Date | Subject | |
---|---|---|---|
Next Message | Enrique Escobar | 2015-04-23 19:49:02 | Re: [pgsql-es-ayuda] Rescatar BD no respaldada |
Previous Message | Enrique Escobar | 2015-04-23 16:20:43 | RE: [pgsql-es-ayuda] RE: [pgsql-es-ayuda] Validación de sesiones. |
From | Date | Subject | |
---|---|---|---|
Next Message | Enrique Escobar | 2015-04-23 19:49:02 | Re: [pgsql-es-ayuda] Rescatar BD no respaldada |
Previous Message | Guillermo Garviso Aubá | 2015-04-23 15:04:23 | Rescatar BD no respaldada |