Em 28-05-2013 12:47, Danilo Silva escreveu:
Eu normalmente sigo os passos abaixo:1) Pra obter de forma mais precisa, utilize a visão pg_stat_replication disponível no servidor mestre, que mostra o estado de mestre e escravo na mesma linha e no mesmo momento. 2) Para determinar quantos bytes por segundo o servidor mestre está fazendo, extraia a consulta duas vezes num intervalo de tempo definido. Faça duas vezes: SELECT now(), * FROM pg_stat_replication; 3) Determine a taxa em bytes/s (1 é a primeira consulta, 2 é a segunda): taxa = (write_location1 - write_location2) / (now1 - now2) 4) Subtraia posição do mestre - posição do escravo e multiplique pelo valor acima: atraso = taxa * (replay_location1 - replay_location2) 5) Note que se seu banco tem variação de carga, você deve fazer esse procedimento acima mais de uma vez ao dia. Existe alguma forma de efetuar as contas direto pelo banco (psql, pgadmin, afins) ou tem que ser na mão? Outra coisa, está correto a
Você pode fazer um script para isso. Não conheço nenhuma ferramenta pronta.
subtração de now1 - now2 (valor menor subtraído com valor maior)? O mesmo para replay_location1 - replay_location2.
Tá ao contrário, desculpe. Fiz rápido pra agilizar sua resposta e acabei me enganando.
[]s __________________________________ Flavio Henrique A. Gurgel Líder de Projetos Especiais Consultoria, Projetos & Treinamentos 4LINUX Tel1: +55-11.2125-4747 ou 2125-4748 www.4linux.com.br email: [email protected] ______________________________ FREE SOFTWARE SOLUTIONS _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
