ob:4.2.1.8
三副本
PRIMARY_ZONE 分布如下:
mysql> select * from oceanbase.dba_ob_tenants \G
*************************** 1. row ***************************
TENANT_ID: 1008
TENANT_NAME: tenant1_back
TENANT_TYPE: USER
CREATE_TIME: 2025-07-16 16:49:21.711633
MODIFY_TIME: 2025-07-21 10:04:46.638542
PRIMARY_ZONE: zone1,zone2;zone3
LOCALITY: FULL{1}@zone1, FULL{1}@zone2, FULL{1}@zone3
PREVIOUS_LOCALITY: NULL
COMPATIBILITY_MODE: MYSQL
STATUS: NORMAL
IN_RECYCLEBIN: NO
LOCKED: NO
TENANT_ROLE: PRIMARY
SWITCHOVER_STATUS: NORMAL
SWITCHOVER_EPOCH: 1752660879490516
SYNC_SCN: 1753063964324060737
REPLAYABLE_SCN: 1753063964324060737
READABLE_SCN: 1753063964324060737
RECOVERY_UNTIL_SCN: 4611686018427387903
LOG_MODE: ARCHIVELOG
ARBITRATION_SERVICE_STATUS: DISABLED
UNIT_NUM: 1
COMPATIBLE: 4.2.1.8
MAX_LS_ID: 1003
1 row in set (0.01 sec)
表结构如下:
mysql> show create table t1 \G
*************************** 1. row ***************************
Table: t1
Create Table: CREATE TABLE `t1` (
`C1` int(11) DEFAULT NULL,
`C2` int(11) DEFAULT NULL
) DEFAULT CHARSET = utf8mb4 ROW_FORMAT = DYNAMIC COMPRESSION = 'zstd_1.3.8' REPLICA_NUM = 3 BLOCK_SIZE = 16384 USE_BLOOM_FILTER = FALSE TABLET_SIZE = 134217728 PCTFREE = 0
partition by hash(c1)
(partition `p0`,
partition `p1`)
1 row in set (0.04 sec)
查看leader分布:
+---------------+------------+------------+----------------+-------+--------------+--------+
| DATABASE_NAME | TABLE_NAME | TABLE_TYPE | PARTITION_NAME | ZONE | SVR_IP | ROLE |
+---------------+------------+------------+----------------+-------+--------------+--------+
| test | t1 | USER TABLE | p0 | zone2 | 10.xx.xx.221 | LEADER |
| test | t1 | USER TABLE | p1 | zone2 | 10.xx.xx.221 | LEADER |
+---------------+------------+------------+----------------+-------+--------------+--------+
2 rows in set (0.04 sec)
为什么t1的两个分区leader都分配到zone2上,而不是zone1、zone2上各1个呢?