Skip site navigation (1) Skip section navigation (2)

Re: RECOVERY INCOMPLETO

From: Eduardo <emorras(at)xroff(dot)net>
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: RECOVERY INCOMPLETO
Date: 2010-03-25 16:39:17
Message-ID: 20100325173917.00001aac@unknown (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
On Tue, 23 Mar 2010 14:02:44 -0600
Miguel Angel Hernandez Moreno <miguel(dot)hdz(dot)mrn(at)gmail(dot)com> wrote:

> hola compañeros:
> 
> Eh estado leyendo un poco sobre la recuperación de datos y resulta
> que ya habia terminado de configurar
> los script y generar la replica, pero resulta ahora que cuando lo
> aplique a la situación real, NO me permite
> recuperar muchos registros perdidos!!
> 
> osea de 120 000 registros que no se replicaron en 4 horas, devido a un
> mantenimiento a un servidor
> solo se recuperaron con un pcp_recovery_node 588 registros, se que es
> por los arcdhivos WAL.
> 
> nose donde es que tenga que moverle o modificar para que las cosas
> apliquen correctamente,
> osea quiero recuperar todos los datos que no se replicaron por el
> mantenimiento de eses servidor
> y mis dudas serian.
> 
> donde hay que configurar para que se recupere TODO?
> es posible recuperarlo (replicarlo)??
> 


Bueno, vamos a ver si hago un resumen de lo que te sucede y las
posibles preguntas y soluciones que se me ocurren.
No he leido todo el thread, puede que me cuele en algo.

Tienes 2 bases de datos con un pgpoolII por delante al que haces las
consultas.

pgpoolII lo tienes (bien) configurado para que haga replicacion en
ambas bases de datos de todos los inserts, deletes, updates etc... que
haces a la BD (la union de ambas dos a traves de pgpoolII).

Paraste una de ellas para hacer mantenimiento de la maquina durante 4
horas y la otra siguio funcionando.

Ahora, al arrancar la bd parada y hacer el pcp_recovery solo se te
añaden 588 registros.


A)
Activaste el WAL archiving en la configuracion de postgres?

archive_mode = on 
archive_command = 'test ! -f /DirectorioWALdePostgres/ || rsync -a
%p /Postgres/pgsql_wal_archive/%f' archive_timeout = 0

creando con anterioridad el directorio /Postgres/pgsql_wal_archive

El command puede ser otro que uses para hacer la copia de los WAL, pero
asegurate que llamas de forma distinta a los distintos archivos de wal,
si no, machacaras los viejos con el nuevo.

B)
Tienes puesto el directorio correcto en pgpool.conf?

backend_data_directory1= ....

D)
pgpoolII manda a todas las bd bajo su paraguas la mismas ordenes de
insert, delete, update, pero si alguna bd tiene un fallo puede que se
queden con datos incosistentes. 
Puedes instalar otra herramienta que haga la replicacion "por el otro
lado", o sea, que compare el contenido de las tablas actuales y haga
las replicas.

Entre ellas tienes slony y alguna mas.

E)
Por que no lo haces a la antigua? Si la bd no es muy grande, puedes
hacer un backup de la primera y volcarlo en la segunda cuando haya poca
actividad.

F)
Tienes algun trigger que modifique los datos al ser insertados,
borrados , etc... puede que se te haya olvidado poner los triggers en
la nueva bd.

> De antemano muchas gracias!!


In response to

pgsql-es-ayuda by date

Next:From: Jaime CasanovaDate: 2010-03-25 17:38:37
Subject: Re: Question about installation in 2003 server
Previous:From: ALCALDIA DE INFANTE ALCALDIA DE INFANTEDate: 2010-03-25 14:51:31
Subject: Question about installation in 2003 server

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group