Replicação entre servidores

Como transformar um SLAVE em MASTER?

RTREPLICATOR.FAQ-82317
Cenário: O servidor MASTER foi perdido e um SLAVE terá de ser promovido a MASTER.

Será necessário:

Se o MASTER ainda puder ser consultado, pode-se copiar a sequencias que estão cadastradas nele para o novo master.
Pode-se utilizar, por exemplo, o comando:
DML-SAVE SEQUENCES;

Comando sql para PK_SEQUENCES
select max(id)+100000 as id from (
select max(id) as id from saldos_mensais_estoques
union all
select max(id) as id from itens_doc_entradas_saidas
union all
select max(id) as id from itens_pedidos
union all
select max(id) as id from movimentos_financeiros
union all
select max(id) as id from lancamentos
union all
select max(id) as id from movimentos_estoques
union all
select max(id) as id from chaves_produtos
union all
select max(id) as id from doc_entradas_saidas
union all
select max(id) as id from produtos
union all
select max(id) as id from historicos_produtos
) as q

Também é necessário ver os ranges já baixados nos slaves. O NEXT_VALUE de cada sequencia deve ser maior que os valores já utilizados nas entidades e maior que todos os ranges já baixados.


Ex:
Para SEQ_PEDIDO
Zerar Max Value, Next range min value e Next range max value.
 select max (pedido) from pedidos;
Para SEQ_PESSOA
 select max(pessoa::numeric)
 from pessoas
 where pessoa ~ '^[0-9]+$';