本节主要介绍主备库功能的注意事项及使用限制。
注意事项
备集群不能主动触发大版本冻结
备集群同步了主集群的 Major Freeze 冻结信息,只有主集群才能发起 Major Freeze 操作,备集群根据主集群的冻结信息调度合并操作。但是备集群可以自己触发 Minor Freeze,与主集群无关。
如果备集群的大版本信息同步落后,可能会导致备集群的系统租户同步卡住。
备集群不能落后太多
备集群长时间落后的情况下,内部会自动执行重建操作拉取主集群上的全量数据,然后从最新的日志点开始同步日志。这个过程会导致内部多版本数据空洞,从而导致 Failover 失败和备集群读失败,待备集群追上主集群后即可恢复服务。
为了让备集群能够在重建的情况下执行有损 Failover,您可以在主集群的每个普通租户下设置系统变量
undo_retention
,保证多版本数据保留特定的时间,系统变量undo_retention
的更多信息请参见 undo_retention。例如,您在主集群的普通租户下执行以下命令,则表示无论是否执行了重建,备集群在落后半小时之内均可以执行 Failover。
obclient> SET GLOBAL undo_retention = 1800;
使用限制
限制项 | 描述 |
---|---|
集群级同步 | 支持主备库按集群同步数据 |
租户级同步 | 不支持主备库按租户同步数据 |
备集群个数限制 | 31 个 |
备集群系统租户 DDL 个数限制 | 小于每秒 500 个 |
配置项是否同步 | 在主集群上修改配置项不影响备集群 |
普通租户的系统变量是否同步 | 在主集群上修改普通系统变量会同步到备集群 |
主集群表级别或者数据库级别设置 Locality 和 Primary Zone | 不支持 |
主集群租户级别设置 Locality 和 Primary Zone | 支持 |
支持的副本类型 |
|
升级模式 | 支持从 V2.2.60 及之后的版本滚动升级 |
GTS 开关限制 | 所有普通租户均开启 GTS |
分布式事务一阶段优化限制 | 主集群和备集群的一阶段优化开关 |
Schema 对象限制 | 支持复制表,但不能设置表级别的 Locality |
添加备集群限制 |
|
Switchover 限制 |
|
Failover 限制 |
|
保护模式限制 |
|
物理备份恢复限制 |
|