Meio Ambiente:
SO: Debian 9
MySQL: 5.7.23 (Executando no cluster de replicação de grupo)
Questão:
O cluster está funcionando bem com 3 nós mysql na replicação de grupo e todos estão funcionando bem. Ao adicionar um 4º nó no cluster de replicação de grupo, o 4º nó é capaz de se conectar ao mestre e a replicação é iniciada, no entanto, o 4º nó sempre aparece como "RECOVERING". Eu verifiquei os logs, mas não houve nenhum erro nos logs.
Como o 4º nó do mysql é capaz de se conectar aos outros membros e replicar os dados, tenho certeza de que não há problema na configuração do mysql.
Uma das suspeitas é que esteja em algum lugar relacionado aos eventos do binlog. Se eu verificar a contagem de 'SHOW BINGLOG EVENTS', ele mostra quase 141957 linhas, no entanto, os outros nós estão tendo apenas 3-4 linhas.
mysql> MOSTRAR EVENTOS BINLOG; 141957 linhas no conjunto (10,74 seg)
Por favor, deixe-me saber como posso adicionar o 4º nó no cluster de replicação de grupo mysql.
Finalmente, encontrei o problema e o corrigi. Os detalhes são fornecidos abaixo:
1) O problema estava acontecendo por causa dos GTIDs executados no conjunto atual de nós de replicação de grupo e as configurações de log binário. Por padrão, os dias de expiração do log binário na configuração atual do MySQL foram definidos como 0 e isso significa que ele pode armazenar muitos arquivos de log binário que são basicamente usados para transações de linha e replicação de grupo. Limpei os arquivos antigos de log binário e configurei os dias de expiração do log binário para '3'. Os comandos usados para esse fim.
2) Após executar os comandos acima no servidor MASTER, apaguei todos os arquivos antigos do log binário e agora a replicação deve demorar bastante. No entanto, depois de limpar os arquivos de log binário antigos, o MASTER não pode definir os outros nós, pois as conexões de nó para eventos MASTER estavam sendo purgadas que estavam nos arquivos de log binário mais antigos. Por isso, precisamos fazer algumas tarefas manuais.
3) Pegue o mysqldump de todos os bancos de dados do MASTER atual e restaure-o no 4º nó mysql que você deseja adicionar.
4) Depois que a restauração for concluída, verifique se as configurações de replicação já foram feitas nas configurações do mysql de todos os nós e reinicie o nó.
5) Reinicie a replicação no 4º nó e, em seguida, a replicação deve ser concluída em alguns minutos ou horas (depende do tamanho do banco de dados)
6) Uma vez que o 4º nó mostra ONLINE, o nó faz parte do cluster de replicação de grupo e pode ser usado para outros fins.