首批通过分布式安全可靠测评,为关键业务系统打造
手动触发转储
更新时间:2026-04-10 11:58:01
系统租户和用户租户可以通过 ALTER SYSTEM MINOR FREEZE 命令手动触发转储。手动转储支持租户级别、Zone 级别、Server 级别、日志流级别和分区级别。
系统租户发起转储
系统租户可以发起租户级别、Zone 级别、Server 级别、日志流级别和 Tablet 级别的转储。
使用
root用户登录集群的sys租户。根据业务需求,选择合适的转储操作。
发起租户级别的转储
可以对指定的一个或多个租户进行转储,SQL 语句如下。
obclient> ALTER SYSTEM MINOR FREEZE TENANT [=] all_user | all | all_meta | tenant_name [, tenant_name ...];示例如下:
系统租户对本租户发起转储
obclient> ALTER SYSTEM MINOR FREEZE;系统租户对所有用户租户发起转储
obclient> ALTER SYSTEM MINOR FREEZE TENANT = all_user;或者
obclient> ALTER SYSTEM MINOR FREEZE TENANT = all;说明
OceanBase 数据库从 V4.2.1 版本开始,
TENANT = all_user与TENANT = all语义相同,在需要生效范围为所有用户租户时,推荐使用TENANT = all_user,后续TENANT = all将废弃不再使用。系统租户对所有 Meta 租户发起转储
obclient> ALTER SYSTEM MINOR FREEZE TENANT = all_meta;系统租户对指定租户发起转储
obclient> ALTER SYSTEM MINOR FREEZE TENANT = tenant1;
发起 Zone 级别的转储
可以对指定的 Zone 进行转储,每次仅支持指定一个 Zone,SQL 语句如下。
obclient> ALTER SYSTEM MINOR FREEZE ZONE [=] zone_name;示例:
obclient> ALTER SYSTEM MINOR FREEZE ZONE = zone1;发起 Server 级别的转储
可以对指定的一个或多个 OBServer 节点进行转储,SQL 语句如下。
obclient> ALTER SYSTEM MINOR FREEZE SERVER = ('ip:port' [, 'ip:port'...]);示例:
obclient> ALTER SYSTEM MINOR FREEZE SERVER = ('xx.xx.xx.xx:2882','xx.xx.xx.xx:2882');发起日志流级别的转储
可以对指定租户的指定日志流进行转储,SQL 语句如下。
ALTER SYSTEM MINOR FREEZE TENANT [=] tenant_name LS [=] ls_id;其中,
tenant_name为指定租户的租户名;ls_id为指定租户的日志流 ID;租户的日志流 ID 可以通过查询oceanbase.CDB_OB_TABLE_LOCATIONS视图获取。示例:
obclient> ALTER SYSTEM MINOR FREEZE TENANT = t1 LS = 1001;语句执行后,系统会对指定租户的指定日志流的所有 Tablet 进行转储。
发起分区级别的转储
在 OceanBase 数据库中,分区与 Tablet 一一对应。
您可以对指定租户的指定 Tablet 进行转储,SQL 语句如下。
ALTER SYSTEM MINOR FREEZE TENANT [=] tenant_name TABLET_ID = tablet_id;或者,也可以对指定租户指定日志流中的指定 Tablet 进行转储,SQL 语句如下。
ALTER SYSTEM MINOR FREEZE TENANT [=] tenant_name LS [=] ls_id TABLET_ID = tablet_id;其中,
tenant_name为指定租户的租户名;ls_id为指定租户的日志流 ID;tablet_id为指定日志流中的 Tablet ID,租户的日志流 ID 和 Tablet ID 可以通过查询视图CDB_OB_TABLE_LOCATIONS来获取。有关视图CDB_OB_TABLE_LOCATIONS中各字段的详细介绍,请参见 oceanbase.CDB_OB_TABLE_LOCATIONS。对指定租户的指定 Tablet 进行转储的示例如下:
obclient> ALTER SYSTEM MINOR FREEZE TENANT = tenant1 TABLET_ID = 200001;对指定租户指定日志流中的指定 Tablet 进行转储的示例如下:
obclient> ALTER SYSTEM MINOR FREEZE TENANT = tenant1 LS = 1001 TABLET_ID = 200001;
用户租户发起转储
用户租户只能对本租户发起租户级别和分区级别的转储。
租户管理员登录集群的 MySQL 租户或 Oracle 租户。
根据业务需求,选择合适的转储操作。
租户级别的转储
obclient> ALTER SYSTEM MINOR FREEZE;分区级别的转储
在 OceanBase 数据库中,分区与 Tablet 一一对应。
您可以对本租户内指定 Tablet 发起转储,语句如下:
ALTER SYSTEM MINOR FREEZE TABLET_ID = tablet_id;其中,
tablet_id可以通过查询视图DBA_OB_TABLE_LOCATIONS来获取。有关视图DBA_OB_TABLE_LOCATIONS中各字段的详细介绍,参见 DBA_OB_TABLE_LOCATIONS。示例:
obclient> ALTER SYSTEM MINOR FREEZE TABLET_ID = 200001;
后续操作
发起转储后,您可以查看转储情况,具体操作请参见 查看转储进度。