首批通过分布式安全可靠测评,为关键业务系统打造
obshell 租户命令组
更新时间:2026-03-03 17:11:07
本文档介绍 obshell 的租户命令组,租户命令组可用于创建和管理租户。该命令组要求 OceanBase 集群已经被初始化。您可通过在命令中配置 -h/--help 选项查看命令的帮助信息,当任务执行报错时,也可配置 -v/--verbose 选项查看命令的详细执行过程。
obshell tenant create
使用该命令可以创建一个业务租户。
${home_path}/bin/obshell tenant create <tenant_name> [-z] [-u] [--unit_num] [--replica_type] [--primary_zone] [--charset] [--collation] [--info] [--read_only]
[--parameters] [--variables] [--whitelist] [--scenario] [--root_password]
# example
# 创建租户 t1,在集群的每个 Zone 上都有一个 FULL 副本,使用的资源池规格是 s1
/home/admin/oceanbase/bin/obshell tenant create t1 -u s1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为待创建的租户名称。
选项说明见下表:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| -z/--zone | 否 | string | 无 | 租户的 Zone 分布。如果未指定,则默认为集群中的所有 Zone。 |
| -u/--unit | 否 | string | 无 | 租户资源池使用的资源规格。
说明可通过如 |
| --unit_num | 否 | int | 1 | 租户在目标 Zone 上的 unit 个数,它的值要小于目标 Zone 的节点个数。 |
| --replica_type | 否 | string | FULL | 租户在目标 Zone 上的副本类型,可取值为 FULL(全功能型副本)或者 READONLY(只读型副本)。
说明可通过如 |
| --primary_zone | 否 | string | RANDOM | 租户的 Primary Zone,指定了租户提供读写服务的 Zone 的优先级。例如 primary_zone ='zone1;zone2,zone3' 表示该租户优先由 zone1 提供读写服务,zone1 比 zone2、zone3 的优先级高,zone2 和 zone3 是同一优先级。 |
| --scenario | 否 | string | 无 | 指定租户负载类型。可选值如下:
说明仅在 OceanBase 集群为 V4.3.0 或之后版本时,支持使用该选项设置租户负载类型。 |
| --variables | 否 | string | 无 | 指定租户的系统变量。格式为 max_connections=1000,ob_query_time=1000000。 |
| --parameters | 否 | string | 无 | 指定租户的配置项。格式为 backup_data_file_size=2G,arbitration_timeout=10s。 |
| --whitelist | 否 | string | 无 | 指定租户的访问白名单。 |
| --root_password | 否 | string | 无 | 指定租户的 root 用户密码。 |
| --import_script | 否 | bool | false | 控制是否将时区数据和空间数据元数据导入到系统租户,默认为 false。 |
| --read_only | 否 | 无 | 无 | 指定租户是否可读。 |
| --charset | 否 | string | 无 | 指定租户使用的字符集。 |
| --collate | 否 | string | 无 | 指定租户使用的字符序。 |
| --info | 否 | string | 无 | 指定租户的信息。 |
obshell tenant drop
使用该命令可删除指定的租户。
${home_path}/bin/obshell tenant drop <tenant_name> [--recycle] [-y]
# example
/home/admin/oceanbase/bin/obshell tenant drop t1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为指定删除的租户名称。
命令的选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| --recycle | 否 | 无 | 无 | 无需传值,当指定该选项时,被删除的租户将会被放入回收站。 |
| -y/--yes | 否 | 无 | 无 | 用于控制是否取消二次确认,无需传值。 |
obshell tenant modify
使用该命令可修改租户的 Primary Zone、whitelist 等属性。
${home_path}/bin/obshell tenant modify <tenant_name> [--primary_zone] [--whitelist] [--password] [--old_password] [--new_password]
# example
/home/admin/oceanbase/bin/obshell tenant modify t1 --primary_zone RANDOM --whitelist '%'
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为指定修改的租户名称。
命令的选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| --primary_zone | 否 | string | 无 | 指定租户的 Primary Zone,指定了租户提供读写服务的 Zone 的优先级。例如 primary_zone ='zone1;zone2,zone3' 表示该租户优先由 zone1 提供读写服务,zone1 比 zone2、zone3 的优先级高,zone2 和 zone3 是同一优先级。 |
| --whitelist | 否 | string | 无 | 指定租户的访问白名单。 |
| --password | 否 | 无 | 无 | 指定是否采用交互的方式修改 root 用户密码,无需传值。
说明该选项与 |
| --old_password | 否 | string | 无 | 需配置为 root 的当前密码,修改 root 用户密码时配置。 |
| --new_password | 否 | string | 无 | 设置 root 用户的新密码,修改密码时配置。 |
obshell tenant lock
使用该命令可锁定租户,被锁定的租户无法被用户访问。
${home_path}/bin/obshell tenant lock <tenant_name>
# example
/home/admin/oceanbase/bin/obshell tenant lock t1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为待锁定的租户名。
obshell tenant unlock
使用该命令可解锁租户。
${home_path}/bin/obshell tenant unlock <tenant_name>
# example
/home/admin/oceanbase/bin/obshell tenant unlock t1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为待解锁的租户名称。
obshell tenant rename
使用该命令可重命名租户。
${home_path}/bin/obshell tenant rename <tenant_name> <new_name>
# example
/home/admin/oceanbase/bin/obshell tenant rename t1 t2
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为待重命名的租户名称,new_name 为租户重命名后的新名称。
obshell tenant replica
使用该命令组可管理租户的副本。
obshell tenant replica add
使用该命令组可批量新增租户副本。
${home_path}/bin/obshell tenant replica add <tenant_name> -z [-u] [--replica_type]
# example
/home/admin/oceanbase/bin/obshell tenant replica add t1 -z zone4,zone5 -u s1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为需要新增副本的租户名称。
命令的选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| -z/--zone | 是 | string | 无 | 指定新增的副本所分布的 Zone,多个 Zone 之前用英文逗号(,)间隔。 |
| -u/--unit | 否 | string | 无 | 租户资源池使用的资源规格。
说明可通过如 |
| --replica_type | 否 | string | 无 | 租户在目标 Zone 上的副本类型,可配置为 FULL(全功能型副本)或者 READONLY(只读型副本)。
说明可通过如 |
obshell tenant replica delete
使用该命令可批量删除租户副本。
${home_path}/bin/obshell tenant replica delete <tenant_name> -z
# example
/home/admin/oceanbase/bin/obshell tenant replica delete t1 -z zone3
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为需要删除副本的租户名称。
可通过配置 -z/--zone 指定被删除的副本分布的 Zone,该选项为必选项,多个 Zone 之间使用英文逗号(,)分割。
obshell tenant replica modify
使用该命令可批量修改副本属性。
${home_path}/bin/obshell tenant replica modify <tenant_name> [-z] [-u] [--unit_num] [--replica_type]
# example
/home/admin/oceanbase/bin/obshell tenant replica modify t1 --unit s2 --unit_num 2
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为需要修改副本属性的租户名称。
命令的选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| -z/--zone | 否 | string | 无 | 指定修改的副本所分布的 Zone,多个 Zone 之前用英文逗号(,)间隔。如果未指定,则默认修改所有 Zone 上的副本。 |
| -u/--unit | 否 | string | 无 | 租户资源池使用的资源规格。
说明可通过如 |
| --unit_num | 否 | string | 无 | 租户在目标 Zone 上的 unit 个数,取值需要小于目标 Zone 的节点个数。 |
| --replica_type | 否 | string | 无 | 租户在目标 Zone 上的副本类型,可配置为 FULL(全功能型副本)或者 READONLY(只读型副本)。
说明可通过如 |
obshell tenant parameter
使用该命令组可管理租户的配置项。
obshell tenant parameter set
使用该命令可设置租户配置项。
${home_path}/bin/obshell tenant parameter set <tenant_name> <name=value>
# example
/home/admin/oceanbase/bin/obshell tenant parameter set t1 cpu_quota_concurrency=10,_rowsets_enabled=true
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下;tenant_name 为待配置租户的租户名;配置项使用 <name=value> 格式配置,配置多个配置项时需使用英文逗号(,)间隔。
示例中,t1 是需要设置配置项的租户名称,cpu_quota_concurrency=10,_rowsets_enabled=true 是为 t1 设置的配置项。
obshell tenant parameter show
使用该命令可查询租户配置项,支持模糊查询。
${home_path}/bin/obshell tenant parameter show <tenant_name> <parameter>
# example
/home/admin/oceanbase/bin/obshell tenant parameter show t1 cpu_quota_concurrency
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下;tenant_name 需设置为待查询配置项的租户名称;parameter 需设置为待查询的配置项名称,支持模糊查询。
obshell tenant variable
使用该命令组可管理租户的系统变量。
obshell tenant variable set
使用该命令可设置租户全局系统变量。
${home_path}/bin/obshell tenant variable set <tenant_name> <name=value>
# example
/home/admin/oceanbase/bin/obshell tenant variable set t1 max_connections=10000,recyclebin=true
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下;tenant_name 需设置为待设置系统变量的租户名称;系统变量使用 <name=value>格式配置,配置多个系统变量时需使用英文逗号(,)间隔。
obshell tenant variable show
使用该命令可查询租户系统变量,支持模糊查询。
${home_path}/bin/obshell tenant variable show <tenant_name> <variable>
# example
/home/admin/oceanbase/bin/obshell tenant variable show t1 max_connections
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下;tenant_name 需设置为待查询系统变量的租户名称;variable 需设置为待查询的系统变量,支持模糊查询。
obshell tenant show
使用该命令可查询租户信息。
${home_path}/bin/obshell tenant show [tenant_name] [-d]
# example
/home/admin/oceanbase/bin/obshell tenant show t1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 需设置为待查询的租户名称,未指定 tenant_name 时,将展示集群中所有租户信息。
可通过配置 -d/--show_detail 控制是否展示租户的详细信息,该选项无需传值。
obshell tenant backup
使用该命令可对指定租户设置备份相关配置项并进行备份。
${home_path}/bin/obshell tenant backup <tenant_name> [flags]
# example
/home/admin/oceanbase/bin/obshell tenant backup t1 -d /path/to/backup/data --backup_mode incremental --encryption MySecretPassword
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 需配置为待备份的租户名称。
命令的选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| -d/--data_backup_uri | 否 | string | 无 | 设置租户的数据备份目的端。若之前设置过备份目的端,此处不配置该选项则采用之前设置的配置;若之前未设置过备份目的端,此处不配置该选项则默认为空。 |
| -a/--archive_log_uri | 否 | string | 无 | 设置租户的日志归档目的端。若之前设置过日志归档目的端,此处不配置该选项则采用之前设置的配置;若之前未设置过日志归档目的端,此处不配置该选项则默认为空。 |
| -m/--backup_mode | 否 | string | full | 数据备份模式,可取值为 full 和 incremental,分别表示全量备份(full)和增量备份(incremental)。 |
| -c/--log_archive_concurrency | 否 | int | 无 | 日志归档总的工作线程数量。 |
| -b/--binding | 否 | string | Optional | 设置归档和业务的优先模式。目前支持设置为 Optional(以用户业务优先) 和 Mandatory(以归档优先)。如果未配置,默认为 Optional 模式。 |
| -i/--piece_switch_interval | 否 | string | 无 | 用于配置 piece 的切换周期,取值范围为 [1d, 7d]。 |
| -e/--encryption | 否 | string | 无 | 为备份后的备份集设置密码。如果设置了该选项,在使用该备份集进行恢复时,需要输入该密码,且该密码不能被删除。 |
| -l/--archive_lag_target | 否 | string | 无 | 控制租户日志归档的延迟时间。如需修改,请确认已完成日志归档目的端的配置。 |
| -D/--delete_policy | 否 | string | default | 设置清理策略,设置了清理策略的租户将会每小时触发一次自动清理。当前仅支持设置为 default,表示自动清理的范围仅为 -d/--data_backup_uri 和 -a/--archive_log_uri 值中的备份。 |
| -r/--delete_recovery_window | 否 | string | 无 | 控制备份数据可恢复的时间窗口,设置时需要带时间单位。该选项的使用可参考 清理备份相关参数介绍。 |
| -s/--ha_low_thread_score | 否 | int | 无 | 指定备份、备份清理等中低优先级任务的当前工作线程数。取值范围为 [0, 100]。 |
| -P/--plus_archive | 否 | 无 | 无 | 控制是否在数据备份过程中同时将归档日志一起备份,无需传值。添加该选项后,最终备份目录下会生成一份带有归档日志的完整数据集。 |
obshell tenant restore
使用该命令可将备份文件恢复到指定租户。
${home_path}/bin/obshell tenant restore <tenant_name> [flags]
# example
/home/admin/oceanbase/bin/obshell tenant restore mytenant --timestamp "2021-01-01T00:00:00.000+08:00" -z "zone1,zone2,zone3" -d '/path/to/backup/data' -a '/path/to/backup/clog' -u unit1
home_path 为 OceanBase 数据库的安装目录,obshell 默认在 OceanBase 数据库安装目录的 bin 目录下。tenant_name 为待恢复的租户名称。
命令的选项说明如下:
| 选项名 | 是否必选 | 数据类型 | 默认值 | 说明 |
|---|---|---|---|---|
| -d/--data_backup_uri | 是 | string | 无 | 源租户的数据备份路径。 |
| -z/--zone | 否 | string | 无 | 租户的 Zone 分布。如果未指定,则默认为集群中的所有 Zone。 |
| --unit_num | 否 | int | 1 | 租户在目标 Zone 上的 unit 个数,取值需要小于目标 Zone 的节点个数。 |
| -u/--unit | 否 | string | 无 | 租户资源池使用的资源规格。
说明可通过如 |
| --replica_type | 否 | string | FULL | 租户在目标 Zone 上的副本类型,可设置为 FULL(全功能型副本)或者 READONLY(只读型副本)。
说明可通过如 |
| --primary_zone | 否 | string | RANDOM | 租户的 Primary Zone,指定了租户提供读写服务的 Zone 的优先级。例如 primary_zone ='zone1;zone2,zone3' 表示该租户优先由 zone1 提供读写服务,zone1 比 zone2、zone3 的优先级高,zone2 和 zone3 是同一优先级。 |
| -T/--timestamp | 否 | string | 无 | 恢复到指定时间戳。需要满足格式如 "2006-01-02T15:04:05.000Z07:00"。 |
| -S/--scn | 否 | int | 无 | 恢复到指定 SCN。 |
| -a/--archive_log_uri | 否 | string | ${data_backup_uri} | 源租户的日志归档路径。未设置的情况下,和 -d/--data_backup_uri 取相同值。 |
| -s/--ha_high_thread_score | 否 | int | 无 | 用于设置高可用高优先级任务的当前工作线程数。取值范围为 [0,100]。 |
| -c/--concurrency | 否 | int | 无 | 指定数据恢复的并发度。如果不指定,则默认等于该租户被分配的 MAX_CPU 数。 |
| -D/--decryption | 否 | string | 无 | 设置备份的恢复密码。仅在数据备份时添加了密码的场景下才需要设置备份的恢复密码。 |
| -k/--kms_encrypt_info | 否 | string | 无 | 设置加密信息。如果未加密或恢复时可以访问原来的密钥管理服务,则不需要设置。 |