本人学习使用mysql中间件,用amoeba 中间件,发现一个问题,那就是。
说一下背景:我建立4个虚拟机
虚拟机1: 安装amoeba for mysql 中间件
虚拟机2:做主数据库master
虚拟机3:做从数据库slave
虚拟机4:做客户client
然后我配置虚拟机2和3上的mysql 使他们主从复制。
然后奇怪的事情发生了,我在客户端client 连接 amoeba 操做虚拟机2上的数库,删除记录或者增加记录,虚拟机3上的从数据库都没有任何变化。 我一开始以为我主从配置的不对。
但是当我不经过amoba,直接client连上虚拟机2上的mysql操作数据库,插入数据和删除数据时,从数据库上同步插入和删除数据,所以主从配置肯定是正确了。
但是为何我client 连接amoeba 操作数主数据库数据,从数据库没有跟着变呢?
说明一下 ameoba已经设置读写分离,读的时候是查询从数据库,写的时候是操作主数据库,也是正常的。client 连接amoeba写数据时是写到了主数据库,读数据时也是从从数据读的,所以主从分离是正常的。
唯独就是写经过amoeba代理后,对主数据库的任何操作,从数据库都没有任何反应,为何呢?
难道经过amoeba操作 master数据,master数据库没有写.bin日志,导致从数据库没有检查到更新?