Estou migrando 2 servidores de banco de dados (Master e Slave) para dois novos servidores de banco de dados (Master e Slave)
DB1 - Mestre (produção)
DB2 - Escravo (produção)
DB3 - Novo mestre
DB4 - Novo escravo
Atualmente, tenho a replicação configurada como:
DB1 -> DB2
DB3 -> DB4
Para que os dados de produção sejam replicados para os novos servidores, eu gostaria de "encadear em cadeia" para que fique assim:
DB1 -> DB2 -> DB3 -> DB4
Isso é possível? Quando executo show master status;
no DB2 (o escravo de produção), a posição do binlog nunca parece mudar:
+ ------------------ + ---------- + -------------- + ---- -------------- + | Arquivo | Posição Binlog_Do_DB Binlog_Ignore_DB | + ------------------ + ---------- + -------------- + ---- -------------- + | mysql-bin.000020 | 98 | | + ------------------ + ---------- + -------------- + ---- -------------- +
Estou um pouco confuso sobre o motivo pelo qual a posição do binlog não está mudando no DB2. Idealmente, será o mestre do DB3.
fonte
Sim, é possível :) Isso é chamado de replicação "Master with Relay Slave" e há muitos documentos sobre isso na rede.
Eu recomendo que você dê uma olhada na documentação oficial aqui .
Aliás, também dê uma olhada nesses slides . Eles têm algumas dicas sobre topologias de replicação.
Espero que isto ajude.
fonte
sim - você pode conectar servidores mysql em cadeia, pode até fazer uma replicação circular com duas ou mais máquinas. lembre-se de habilitar o log de bin no slave, que também atua como mestre.
fonte
Sim, é possível. Realisticamente, você precisa de uma nova captura instantânea do DB2 para construir o DB3. Nesse ponto, se você tiver uma boa posição, poderá usar o que para o DB4 ou tirar outro instantâneo do DB3.
Não se esqueça de definir exclusivo
server_id
para cada servidor.Alto desempenho O MySQL é um ótimo livro para referenciar uma administração MySQL mais avançada.
fonte
Por que não adicionar DB3 como um novo escravo e promovê-lo a dominar quando estiver pronto para fazer a troca? Isso daria a você o benefício adicional temporário de ter vários escravos e reduzir ou eliminar seu tempo de inatividade.
fonte