software mysql:alguma sugestão para supervisionar meu servidor de replicação mysql?

StackOverflow https://stackoverflow.com/questions/35420

  •  09-06-2019
  •  | 
  •  

Pergunta

Tive dificuldade em configurar meu servidor de replicação.Existe algum programa (OS X, Win, Linux ou php sem problemas) que me permita monitorar e resolver problemas de replicação?(aliás, para aqueles -uhm- que seguem, eu já estive nesse assunto aqui, aqui, aqui e aqui.Ou estou fazendo isso da maneira errada ou devo ser imensamente estúpido)

Meu banco de dados de produção tem vários megas de tamanho e está crescendo.Cada vez que a replicação do banco de dados para e os bancos de dados inevitavelmente começam a ficar fora de sincronia, eu me arrepio.Minha última ressincronização do dump levou quase 4 horas de ida e volta!

Como sempre, mesmo após a sincronização, encontro esse tipo de erro que interrompe o show":

Error 'Duplicate entry '252440' for key 1' on query.

Eu adoraria se houvesse alguma maneira de monitorar de perto o que está acontecendo e talvez deixar o software lidar com isso.Sou até atento às empresas de serviços que podem me ajudar a monitorar melhor meus dados.Ou uma forma alternativa de espelhar completamente.

Editar:analisando minhas perguntas anteriores, descobri esse o que ajuda tremendamente.Ainda estou atento à solução de monitoramento.

saúde,

/mp

Foi útil?

Solução

Para monitorar os servidores usamos o serviço gratuito ferramentas do Maatkit ...simples, mas eficiente.

A replicação binária está disponível no 5.1, então acho que você tem coragem.Ainda usamos o 5.0 e funciona bem, mas é claro que tivemos alguns problemas com ele.

Usamos uma replicação Master-Master com um proxy MySql como balanceador de carga na frente e para evitar erros:

  • removemos todos os índices exclusivos
  • para os poucos casos em que realmente precisávamos de restrições exclusivas, nos certificamos de usar REPLACE em vez de INSERT (o proxy MySql pode ser usado para proteger o uso adequado ...pode até reescrever suas consultas)
  • scripts agendados que fazem relatórios intensivos estão sempre acessando o mesmo servidor (não o balanceador de carga) ...para que operações perigosas sejam replicadas com segurança

Sim, eu sei que parece simples e estúpido, mas resolveu 95% de todos os problemas que tivemos.

Outras dicas

Usamos replicação mysql para replicar dados para cerca de 30 servidores.Nós os monitoramos com nagios.Provavelmente você pode verificar o status da replicação e usar um manipulador de eventos para reiniciá-lo com 'SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;Iniciar escravo;'.Isso corrigirá o erro, mas você perderá a inserção que causou o erro.

Sobre o erro, você usa tabelas de memória em seus escravos?Eu pergunto isso porque a única vez que recebemos muitos desses erros, eles foram causados ​​por um bug nas versões mais recentes do MySQL.'Excluir da tabela onde campo = valor' excluirá apenas uma linha nas tabelas de memória, mesmo que haja várias linhas.

descrição do bug do mysql

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top