oceanbase集群配置参数

概述

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;
    

    OB-管理oceanbase集群参数_sql

  • 普通租户

    SHOW PARAMETERS LIKE 'sql_work_area';
    

    OB-管理oceanbase集群参数_集群配置_02

SHOW PARAMETERS 列属性说明
列名 含义
zone 所在的 Zone。
svr_ip 机器 IP。
svr_port 机器的端口。
name 配置项名。
data_type 配置项的数据类型,包括 NUMBERSTRINGCAPACITY 等。
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';