InnoDB复制集
- InnoDB ReplicaSet简介
- AdminAPI包括对InnoDB ReplicaSet的支持,使您能够以类似于InnoDB集群的方式管理一组运行基于异步GTID的复制的MySQL实例。InnoDB ReplicaSet由一个主副本和多个副副本(传统上称为MySQL复制主副本和从属副本)组成。您可以使用ReplicaSet对象和A
- 部署InnoDB ReplicaSet
- 您以与InnoDB群集类似的方式部署InnoDB ReplicaSet。首先,您配置一些MySQL服务器实例,最少为两个实例。在本教程中,其中一个作为主要功能rs-1;在本教程中,其他实例充当辅助实例rs-2;复制主数据库应用的事务。这等效于异步MySQL复制中已知的主服务器和从服务器。然后,使用M
- 将实例添加到副本集
- 创建副本集后,可以使用该ReplicaSet.addInstance()操作将实例添加为副本集当前主副本的只读辅助副本。因此,在此操作过程中,副本集的主要对象必须可访问且可用。使用自动创建的带有随机密码的MySQL帐户,在添加的实例和主实例之间配置MySQL复制。将实例添加到副本集后,该操作将等待新
- 采用现有的复制设置
- 作为创建新InnoDB ReplicaSet的替代方法,您还可以使用adoptFromAR带有选项的现有复制设置dba.createReplicaSet()。扫描复制设置,并且如果它与InnoDB ReplicaSet的前提条件兼容,则AdminAPI将创建必要的元数据。一旦采用了复制设置,则只能使
- 使用InnoDB ReplicaSet
- 使用InnoDB ReplicaSet的方式与使用InnoDB集群的方式几乎相同。例如,如在将实例添加到ReplicaSet中所示,您将一个ReplicaSet对象分配给一个变量,并调用管理副本集的操作,例如ReplicaSet.addInstance()添加实例,这与Cluster.addInst
- 将副本集与MySQL路由器一起使用
- 您可以使用MySQL Router 8.0.19及更高版本对副本集进行引导,就像可以引导InnoDB集群一样。请参见“将MySQL路由器与InnoDB群集一起使用”。生成的MySQL Router配置文件中的唯一区别是该cluster_type选项的添加。当MySQL路由器针对副本集进行引导时,生成
- InnoDB集群的已知限制
- 本节描述了InnoDB集群的已知限制。由于InnoDB集群使用组复制,因此您还应该注意其限制,请参见“组复制限制”。如果在创建全局会话时未指定会话类型,则MySQL Shell提供自动协议检测功能,该方法会尝试首先创建NodeSession,如果失败,它将尝试创建ClassicSession。对于由