Salve galera!
Apesar de fugir um pouco do tópico de nosso site, gostaria de escrever um artigo bem resumido sobre como criar um servidor mirror MySQL.
Criando um servidor mirror, permite que você mantenha um site de contingência e evite muitos problemas.
Atenção: Servidores de mirror não substituem backup! Tenha sempre uma cópia de backup das informações.
Bem, vamos começar a preparar o ambiente.
Meu ambiente:
Servidor produtivo:
– Mysql Server 5
– CentOS ( na verdade o sistema operacional não vai importar hehehe )
– Base produtiva de um servidor de monitoramento ( zabbix )
– IP 10.100.1.191
Servidor espelho:
– Mysql Server5
– CentOS minimal.
– IP 10.100.1.104
EXPLICAÇÃO SUPERFICIAL
Em nosso servidor de mirror, vamos utilizar as alterações efetuadas no servidor master (produção). Estas atualizações são definidas como log-bin, ou seja, logs de alteração.
Estes logs normalmente ficam em /var/lib/mysql
e contém (exatamente) os comandos SQL executados no server.
Para visualizar um arquivo de bin no linux, faça:
Para maiores detalhes sobre a definição dos log-bins, acesse http://dev.mysql.com/doc/refman/5.1/en/binary-log.html
PREPARANDO SERVIDOR PRODUTIVO
A preparação do servidor produtivo requer alguns cuidados. Na verdade a parte de configuração é muito simples exigindo poucas linhas.
Primeiro verifique se o servidor mysql está devidamente em execução e se aceita conexões externas:
PREPARANDO SERVIDOR ESPELHO
Nada diferente de nosso servidor produtivo, porém aqui definimos outro server-id ( server-id=2 ). |
PREPARANDO AMBIENTE DO BANCO
Vamos criar o usuário na base produtiva ( obs: não precisa criar na base de espelho ).
Para que a base não ficasse travada, voltamos ao processo do mysql usando fg e desativamos a trava de tabelas.
SUBINDO A BASE MIRROR
Primeiro copie o nosso dump para o servidor de mirror. No meu caso ele é pequeno em bases muito utilizadas pode ter alguns GBs ou TBs 🙂 |
Após copiar, suba o dump utilizando o comando:
Uma vez com o dump carregado na máquina slave, informe o master, o usuário e a senha do replicador.
Tem um post bem parecido no Blog Aprendendo Ti no dia-a-dia falando de replicação de bases no MySQL no link http://blog.gaudencio.net.br/2012/04/manual-de-replicacao-mysql.html , com uma abordagem diferente.
Legal, parabéns!
capin
Primeiramente gostaria de dar os parabéns pelo post.
Eu tenho só uma dúvida,como que faço para fazer redundância de apenas uma database especifica?