mysql gtid模式主从兼容性

对下面这张图的1,2,3,4处不理解
图片说明


  • 第1处,master为OFF,slave为ON_PERMISSIVE时。

    master的日志为匿名的,为什么slave不能兼容?ON_PERMISSIVE不是能够接受匿名和gtid事务么?
    
  • 第2处 master为OFF_PERMISSIVE,slave为ON

    master日志为匿名事务,为什么从库是Y*(即可以auto-positioning),自动定位不需要gtid么?
    
  • 第3处 master为ON_PERMISSIVE,slave为OFF

    master的日志为gtid格式的,从库OFF为什么可以兼容(OFF模式不是只能接受匿名事务么)
    
  • 第4处 master为ON,slave为OFF_PERMISSIVE

        master日志为gtid格式,从库OFF_PERMISSIVE为什么不能兼容(OFF_PERMISSIVE不是可以接受匿名和gtid事务么?
    

感觉自己哪儿理解错了,请大神帮忙解答下

参考GPT和自己的思路:

  1. 第1处的情况,如果master为OFF,表示该主库没有启用gtid模式,由于在MySQL5.7以后默认启用gtid模式,所以在slave为ON_PERMISSIVE模式的情况下,该从库只能接受gtid格式的事务,因此无法兼容匿名格式事务。

  2. 在第2处的情况中,如果master为OFF_PERMISSIVE,表示该主库没有启用gtid模式,从库为ON模式,表示该从库启用了gtid模式,因此可以自动定位到主库的最新位置进行复制操作,并不需要gtid。

  3. 在第3处的情况中,如果master为ON_PERMISSIVE,表示该主库启用了gtid模式,而从库为OFF模式,表示该从库没有启用gtid模式,在这种情况下,从库只会接受匿名格式事务,因此可以兼容主库的gtid格式事务,但是不会记录这些事务的gtid信息。

  4. 在第4处的情况中,如果master为ON,表示该主库启用了gtid模式,而从库为OFF_PERMISSIVE模式,表示该从库没有启用gtid模式,同样只接受匿名格式事务,因此无法兼容主库的gtid格式事务。虽然OFF_PERMISSIVE模式可以接受匿名和gtid格式事务,但是这里的关键在于从库是否开启了gtid模式。