这里不赘述5.7的安装步骤,主要注意初始化方法和配置文件,有了很大的改动,同时5.7加强了安全性,初始化后会给出密码,第一次登陆要修改密码。
OK,废话少说,回到主题,5.7的半同步强复制。
半同步复制搭建与5.6版本没有差别,搭建过程略。
将主库的半同步时间加长。参数如下图。
主库创建测试库测试表。插入数据。
从库查询数据。
主库开启另一会话-会话二,查询数据。
停掉从库io复制线程。
主库会话一继续插入数据,产生等待。
主库会话二查询数据,查询不到会话一后续插入的数据。
此步骤不同于5.6,5.6中另一会话可以查询到该值,后续会找时间进行证明。
将主库进程kill掉,然后查看主库binlog,发现binlog中记录了插入值。
总结:
5.7的半同步强一致性,为after_sync时,事务刷入binlog后,会等待从库返回确认信息,返回后在写入引擎层,否则等待。开启另一回话(用户刷新)不会发现该事务。
5.6中主库不等待从库返回确认信息,直接将事务写入引擎层。开启另一回话(用户刷新)会发现该事务。
5.7加强了半同步的强一致性。
时间: 2024-09-30 16:27:06