Da documentação do MySQL , existem duas maneiras de configurar uma arquitetura mestre-escravo. A maneira tradicional, usando os arquivos de log para replicar transações e a nova versão (5.6+) usando GTIDs (identificadores globais de transações).
Se você optar por usar GTIDs para fazer o tratamento de failover, usará o mysqlfailover Utilitário. O utilitário trata as falhas do mestre de uma das três maneiras definidas pelo administrador do banco de dados:
- auto (padrão):Uma busca é feita em uma lista de escravos preferidos para se tornarem mestres, se nenhum estiver disponível, outro escravo é escolhido. O escravo escolhido primeiro se torna escravo de todos os outros escravos e tem todas as alterações dos outros escravos copiados para ele, desta forma o novo mestre será a versão mais atualizada possível.
- eleger:o mesmo que acima, exceto que se nenhum escravo da lista estiver disponível, ele retornará um erro e terminará (sem failover)
- fail:nenhum failover acontece mysqlfailover apenas monitorará o banco de dados e retornará um erro se ocorrer uma falha.
A maneira tradicional requer que você implemente seu próprio script para gerenciamento de banco de dados e é melhor explicado aqui .