
读写压力:读写分离,主从复制,例如一主三从,主节点负责写,数据复制给从,从节点负责读。
故障转移:主从切换
容量问题:分库分表
一致性问题:分布式事务。分为XA与柔性事务。
XA:数据库要支持XA协议,直接调用。
柔性事务:业务侧,使用一些实现分布式事务的插件。
操作数据都会写入binlog,从机 会不断拉取主机的数据,通过io线程存入到relaylog,再通过sql线程执行relaylog。
row 比较精确,statement 比较精简,一般使用mixed混合模式让数据库自动选择。
传统主从复制:网络抖动,会导致数据不一致。
半同步复制:需要启用插件,主库Binlog发给从库relaylog,然后从库再发给主库ack确认已收到,主库再提交。但超过一定时间,主库会不等从库的消息,直接commit。
组复制:每个节点看做主节点,基于Paxos协议,先拿到资源的节点验证通过后才能执行操作,其余节点就会回退。
初始化数据库。
具体配置主从数据库,参考课件md文件。
