[ERROR] Slave I/O for channel '': The replication receiver thread cannot start because the master has GTID_MODE = ON and this server has GTID_MODE = OFF. Error_code: 1593
【报错原因】
MySQL的Master和Slave必须同时开启或者关闭enforce-gtid-consistency和gtid-mode功能,即要保持一致。
【解决方法】
关闭master的enforce-gtid-consistency和gtid-mode功能。
mysql> stop slave;
Query OK, 0 rows affected (0.02 sec)mysql> set global enforce_gtid_consistency=on;
Query OK, 0 rows affected (0.00 sec)mysql> set global gtid_mode=ON; 必须先进行set global enforce_gtid_consistency=on;
Query OK, 0 rows affected (0.00 sec)mysql> start slave;
Query OK, 0 rows affected (0.09 sec)
【参考资料】
gtid-mode用来设置是否开启GTID功能,如果要开启GTID功能,需要同时开启log-bin和 log_slave_updates功能,另外还需要开启enforce_gtid_consistency功能。gtid_mode参数可以设置为 on、off、upgrade_step_1、upgrade_step_2四种值,其中upgrade_step_1和upgrade_step_2是 给将来mysql可能的新功能预留的,对当前的myql没有任何意义。同时,mysql建议在mysql_upgrade的时候,关闭gtid_mode 功能和enforce_gtid_consistency功能,因为Mysql在upgrade期间可能会操作非事务的MyISAM存储引擎表,会引起报 错。