不同的实例之间可以搭建复制关系,复制可以有异步,半同步模式,只读实例与主实例就是靠binlog 复制来保持数据最终一致的; 注意这里不是实时一致,会有一定的延迟;所以业务上在只读库上的查询操作就要注意这一点,有可能读到的数据不是最新的;有些应用对这个是敏感的,有些是OK 的,要看具体应用场景;
在MySQL数据库中主库的IUD操作都会记录到binlog里,然后这个binlog会同步给只读实例。备库接收到这个binlog会replay到只读库上来实现主数据库和只读数据库一致性
rds的主库有了更新操作操作(insert,update,delete都算更新操作),主库会形成执行log,这个log不是简单的sql,而是解析sql后的执行步骤。定时将增量日志同步给备库,备库就可以用很少的资源将数据跟主库同步。
分享数据库前沿,解构实战干货,推动数据库技术变革