Replicação parada, banco consistente?

Lists: pgsql-pt-geral
From: "Luiz Carlos L(dot) Nogueira Jr(dot)" <lcnogueirajr(at)gmail(dot)com>
To: pgsql-pt-geral(at)lists(dot)postgresql(dot)org
Subject: Replicação parada, banco consistente?
Date: 2018-07-20 11:46:26
Message-ID: CAM=t8Bo4QSaUcW9NHYVxAZT-tMZ89_0byo-9abv9Fix7ooX8+w@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-pt-geral

Pessoal,

Tenho o seguinte caso.
Tenho uma base replicada apenas para fazer backup (ninguém conecta nela).
Paro a replicação com pg_xlog_replay_pause();. Nesse momento posso
garantir que os dados desse banco estão consistentes? (pk)

Motivo:
Tenho de migrar o banco com 2 tabelas sem as colunas binárias. Então faço o
dump sem os dados das 2 tabelas, e esses dados vão via copy (todas as
linhas).

Quando rodei à noite onde o número de transações no banco principal é
baixa, funcionou corretamente, mas quando rodei no meio do expediente deram
alguns erros de PKs, como se o banco estivesse inconsistente.

Esse comportamento é normal?

Teria de rodar um checkpoint pra garantir a consistência dos dados
antes do pg_xlog_replay_pause();
ou tem outra maneira de garantir a consistência?

Luiz Carlos


From: Cleiton Luiz Domazak <cleitondomazak(at)gmail(dot)com>
To: lcnogueirajr(at)gmail(dot)com
Cc: pgsql-pt-geral(at)lists(dot)postgresql(dot)org
Subject: Re: Replicação parada, banco consistente?
Date: 2018-07-20 14:43:04
Message-ID: CAKx1C8G8AWXVsBE9XkhzEMzLyTm+tOBrGbwmsjJ0agD8cG58jw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Lists: pgsql-pt-geral

On Fri, Jul 20, 2018 at 12:46 PM Luiz Carlos L. Nogueira Jr. <
lcnogueirajr(at)gmail(dot)com> wrote:

> Pessoal,
>
> Tenho o seguinte caso.
> Tenho uma base replicada apenas para fazer backup (ninguém conecta nela).
> Paro a replicação com pg_xlog_replay_pause();. Nesse momento posso
> garantir que os dados desse banco estão consistentes? (pk)
>
> Motivo:
> Tenho de migrar o banco com 2 tabelas sem as colunas binárias. Então faço
> o dump sem os dados das 2 tabelas, e esses dados vão via copy (todas as
> linhas).
>
Não responde a sua pergunta, mas te faço outra :), pq você para a
replicação para realizar o dump? A não ser que exista algum requisito no
seu backup que dependa disso, mas não ficou claro, por isso pergunto. Eu
sempre usei o slave para realizar o dump sem maiores problemas, inclusive
para retirar essa carga do master.

>
> Quando rodei à noite onde o número de transações no banco principal é
> baixa, funcionou corretamente, mas quando rodei no meio do expediente deram
> alguns erros de PKs, como se o banco estivesse inconsistente.
>
> Esse comportamento é normal?
>
> Teria de rodar um checkpoint pra garantir a consistência dos dados antes
> do pg_xlog_replay_pause(); ou tem outra maneira de garantir a
> consistência?
>
> Luiz Carlos
>