---
title: github-fill
description: Locality 概述 Locality 描述了表或租户下副本的分布情况。这里的副本分布情况指在 Zone 上包含的副本的数量以及副本的类型，不同的租户在同一个集群内可以配置不同的 Locality 并且彼此之间相互独立不受影响。 Locality 语义 Locality 基本语法结构型为如下所示： replicas…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 4.1.0

# Locality 概述

更新时间：2023-08-01 11:45:47

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.1.0/zh-CN/700.reference/200.administrator-guide/400.replica-management/500.locality-management/100.tenant-locality-overview.md)  

Locality 描述了表或租户下副本的分布情况。这里的副本分布情况指在 Zone 上包含的副本的数量以及副本的类型，不同的租户在同一个集群内可以配置不同的 Locality 并且彼此之间相互独立不受影响。

## Locality 语义

Locality 基本语法结构型为如下所示：

```sql
replicas{量词}@location

```

语法中各元素的意义如下表所示：

| **元素** | **说明** |
| --- | --- |
| replicas | 表示副本类型，副本类型相关说明请参见 [副本概述](https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001699418)章节。    `replicas` 的值为副本名称，您可以在副本类型说明表中的名称列获得支持的值（支持全名和简写）。 |
| location | 表示位置。它是系统已知的一组枚举值。 `location` 的值为 Zone 的名称。集群和租户中的各 Zone 的名称的查看方法，可参见 [查看集群拓扑图](https://www.oceanbase.com/docs/common-oceanbase-database-cn-10000000001702225)。 |
| 量词 | 不指定量词的时候，表示一个副本。用 `{n}` 表示 n 个副本。 有一种特殊的量词 `{all_server}` 表示副本数和可用的 OBServer 节点的数量相同。一个分区在一个 Zone 中最多有一个全功能副本（该类型的副本是 Paxos 复制组的成员）。 |

#### 说明

- 表的 Locality 可以为空，表示继承所属租户。租户的 Locality 不可以为空。
 - 当租户的 Locality 发生变更时，在该租户下，所有 Locality 为空的表的副本的分布情况也会随之变化。Locality 不为空的表在租户的 Locality 变更时，其对应副本的分布情况不会改变。

下述示例展示了在一个拥有五个 Zone（ z1~z5 ）的 OceanBase 集群中，可以容纳不同 Locality 的多个租户和它们的 Locality 情况：

- sys tenant 的 Locality： `F@z1,F@z2,F@z3,F@z4,F@z5`
 - tenant2 的 Locality： `F@z1`

## Locality 变更规则

Locality 的变更需要遵循以下规则，在旧的一轮租户 Locality 没有完成变更时，新一轮的租户 Locality 变更不允许被执行。

## Locality 应用场景

Locality 的设置通常用于集群的副本数升级、降级或集群的搬迁：

- 集群副本数升级

  以租户为粒度，对集群中的每一个租户，增加租户下 Partition 的副本数。例如，将 Locality 由 `F@z1,F@z2,F@z3` 变更为 `F@z1,F@z2,F@z3,F@z4,F@z5`，租户从 3 副本变为 5 副本。
 - 集群副本数降级

  以租户为粒度，对集群内的每一个租户减少其中 Partition 的副本数。例如，将 Locality 由 `F@z1,F@z2,F@z3,F@z4,F@z5` 变更为 `F@z1,F@z2,F@z3`，租户从 5 副本变为 3 副本。
 - 集群搬迁

  以租户为粒度，对集群内的每一个租户通过若干次 Locality 变更。例如：将 Locality 从 `F@hz1,F@hz2,F@hz3` 变更为 `F@hz1,F@sh1,F@sh2`，`hz` 和 `sh` 表示 Zone 所在的城市为杭州和上海。即代表将原集群中属于杭州的两个 Zone 迁到上海。

 上一篇 下一篇 ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
