首批通过分布式安全可靠测评,为关键业务系统打造
通过 OCP 创建备集群时报错 4179
更新时间:2026-05-09 07:56
适用版本
OCP 和 OceanBase 数据库的各个版本。
问题现象
通过 OCP 创建备集群时报如下错误。
-4179, set table's primary_zone/locality while standby exist not allowed
问题原因
如果在 table 级别或者 database 级别设置了 primary zone 或 locality 就不允许创建备集群了。
具体原因:实现上的限制,如果主备集群异构的话,备集群没有对应的 zone 会有问题的。
解决方法
执行下面的 SQL 命令做检查。
obclient> alter system add cluster verify;
obclient> select * from oceanbase.__all_virtual_database where primary_zone != '';
obclient> select * from oceanbase.__all_virtual_table where locality != '' or primary_zone != '';
通过如下命令将查询出来的 primary_zone 不为空的 database 或 table 的 primary_zone 置空。
obclient> alter table xxx set primary_zone=default;
obclient> alter database xxx set primary_zone=default;