MySQL 4种不同类型数据同步
来自Linux78|wiki
异步复制:
是最早出现的复制技术,MySQL内置支持,不需要额外安装插件。
其中,一个实例充当主库,一个或多个其他实例充当从库,与同步复制形成对比。
半同步复制:
MySQL 5.7(从MySQL 5.5开始支持半同步复制)除内置了异步复制之外,还支持半同步复制。
使用半同步复制时,主库的会话在提交事务之前,会等待至少一个从库返回收到二进制日志的ACK消息(确认接收,并将事务的事件记录到从库的中继日志中)。
延迟复制:
MySQL 5.7还支持延迟复制(从MySQL 5.6开始支持),使得从库可以故意滞后于主库至少一段指定的时间,以便在出现误操作时,有时间对误操作的数据进行补救。
同步复制:指的是需要保证写操作完全同步到其他数据节点,而不仅仅是二进制日志被其他节点接收。
例如NDB Cluster,它是一种集群架构,所有节点都可以进行读/写,而且每个节点上发生的写操作都会实时同步到其他节点。
对于需要同步复制的场景,可以使用NDB Cluster,或者其他类似的开源解决方案(虚拟同步,非完全同步),例如Percona XtraDB Cluster(PXC)、MariaDB Galera Cluster(MGC)、MySQL Group Replication(MGR)。