Eu tenho a configuração de replicação encadeada do MySQL como Master->Slave1->Slave2.
Os eventos estão replicando perfeitamente de M->S1 e também gravados nos logs de retransmissão e binários em S1, mas o S2 não recebe esses eventos.
SHOW SLAVE STATUS
no S2 está mostrando os threads de IO e SQL em execução, Exec_Master_Log_Pos
está mudando constantemente, mas Relay_Log_Space
permanece Relay_Log_Pos
estático.
Master é MySQL 5.5, S1 e S2 são ambos MySQL 5.6.40.
Interessante que, se alguma atualização for feita diretamente no S1, ela será replicada corretamente no S2.
Verifiquei que o espaço em disco não está cheio em nenhum dos servidores.
Também olhei e coloquei um comentário sobre a replicação do Mysql está habilitada, mas travada em "aguardando a atualização do log binário"
Em S1
eu tenho:
mysql> show global variables like '%slave%';
+------------------------------+-----------------------+
| Variable_name | Value |
+------------------------------+-----------------------+
| init_slave | |
| log_slave_updates | ON |
| log_slow_slave_statements | OFF |
| rpl_stop_slave_timeout | 31536000 |
| slave_allow_batching | OFF |
| slave_checkpoint_group | 512 |
| slave_checkpoint_period | 300 |
| slave_compressed_protocol | OFF |
| slave_exec_mode | STRICT |
| slave_load_tmpdir | /tmp |
| slave_max_allowed_packet | 1073741824 |
| slave_net_timeout | 3600 |
| slave_parallel_workers | 0 |
| slave_pending_jobs_size_max | 16777216 |
| slave_rows_search_algorithms | TABLE_SCAN,INDEX_SCAN |
| slave_skip_errors | OFF |
| slave_sql_verify_checksum | ON |
| slave_transaction_retries | 10 |
| slave_type_conversions | |
| sql_slave_skip_counter | 0 |
+------------------------------+-----------------------+
On M:
- SELECT @@global.server_id=6
- SELECT @@global.server_uuid=05ac0062-7af8-11e5-9af2-9c8e991000d2
On S1:
- SELECT @@global.server_id=4
- SELECT @@global.server_uuid=062ad58e-59ed-11e8-a7ea-000d3a32adb2
On S2:
- SELECT @@global.server_id=6
- SELECT @@global.server_uuid=184b1c69-7868-11e8-aeab-000d3a321333