概述
OceanBase 集群的唯一标识是集群名称和集群 ID。
通过OCP管理
集群参数管理
集群配置分类
- 按级别分类:集群参数和租户参数
- 按是否在线生效分类:动态生效和重启生效
集群级别参数
集群参数用于控制集群的负载均衡、合并时间、合并方式、资源分配和模块开关等功能。
租户级别参数
- 系统租户可以查看和设置所有其他租户的参数(包括 sys 租户)
- 普通租户只能设置自己租户的参数
不同租户对集群参数的查看和修改级别
租户类型 | 参数查看 | 参数设置 |
---|---|---|
系统租户 | 查看集群参数和其他租户参数 | 可以设置集群参数或指定租户的参数 |
普通租户 | 只能查看本租户的参数 | 只能设置本租户的参数 |
配置参数持久化
observer 进程启动成功后,参数值持久化到${INSTALL_HOME}/etc/observer.config.bin
文件中。
查看集群参数
通过SQL查询
系统租户和普通租户查询集群参数
-
系统租户查询集群参数的语法
SHOW PARAMETERS [SHOW_PARAM_OPTS] [tenant='tenant'];
-
普通租户查询集群参数的语法
SHOW PARAMETERS [SHOW_PARAM_OPTS]
各参数的含义
[SHOW_PARAM_OPTS]
:值可指定为[LIKE 'pattern' | WHERE expr]
[tenant='tenant']
:系统租户查看集群参数时需指定租户名
示例
-
系统租户
SHOW PARAMETERS LIKE 'sql_work_area' tenant=sys; SHOW PARAMETERS WHERE edit_level='static_effective' AND name='sql_work_area' tenant=sys;
-
普通租户
SHOW PARAMETERS LIKE 'sql_work_area';
SHOW PARAMETERS 列属性说明
列名 | 含义 |
---|---|
zone | 所在的 Zone。 |
svr_ip | 机器 IP。 |
svr_port | 机器的端口。 |
name | 配置项名。 |
data_type | 配置项的数据类型,包括 NUMBER 、STRING 、CAPACITY 等。 |
value | 配置项的值。 |
info | 配置项的说明信息, |
section | 配置项所属的分类。 |
scope | 配置项范围属性:Tenant :租户级别Cluster :集群级别 |
source | 当前值来源: Tenant Cluster CommandLine ObAdmin File |
edit_level | 定义该配置项的修改行为:READONLY :表示该参数不可修改。STATIC_EFFECTIVE :表示该参数可修改但需要重启 OBServer 才会⽣效。DYNAMIC_EFFECTIVE :表示该参数可修改且修改后动态⽣效。 |
修改集群参数
配置语法
ALTER SYSTEM SET param_name = expr
[COMMENT 'text']
[PARAM_OPTS]
[TENANT = 'tenantname']
PARAM_OPTS:
[ZONE='zone' | SERVER='server_ip:rpc_port']
同时修改多个系统配置项时,请用逗号(,)分隔
说明
PARAM_OPTS
是修改配置项时所指定的其它限定条件,例如,指定 Zone、指定 Server 等。ALTER SYSTEM
语句不能同时指定 Zone 和 Server。并且在指定 Zone 时,仅支持指定一个 Zone;指定 Server 时,仅支持指定一个 Server。- 集群级别的配置项(
Scope
) 不能通过普通租户设置,也不可以通过 sys 租户指定普通租户来设置。例如,ALTER SYSTEM SET memory_limit='100G' TENANT='test_tenant'
将导致报错,因为memory_limit
是集群级别(Scope
)的配置项。
集群级别与租户级别的配置项设置的不同
-
系统租户设置集群配置项的语法
ALTER SYSTEM SET mysql_port=8888 [PARAM_OPTS]
-
系统租户设置租户配置项的语法
ALTER SYSTEM SET sql_work_area='1G' [PARAM_OPTS] TENANT=all|TENANT_NAME|seed
-
租户设置租户配置项的语法
ALTER SYSTEM SET sql_work_area='2G' [PARAM_OPTS]
系统租户也可以使用该命令修改系统租户本身的租户配置项的值。
示例
-
系统租户设置集群配置项。
obclient> ALTER SYSTEM SET mysql_port=8888; obclient> ALTER SYSTEM SET mysql_port=8888 ZONE='z1'; obclient> ALTER SYSTEM SET mysql_port=8888 SERVER='192.168.100.1:2882';
-
系统租户设置租户配置项。
obclient> ALTER SYSTEM SET sql_work_area='1G' tenant='test_tenant';
-
租户设置租户配置项。
obclient> ALTER SYSTEM SET sql_work_area='2G'; obclient> ALTER SYSTEM SET memory_limit = '100G' SERVER='192.168.100.1:2882'; obclient> ALTER SYSTEM SET memory_limit = '100G' ZONE='z1';