首批通过分布式安全可靠测评,为关键业务系统打造
修改日志流降级控制时间
更新时间:2026-06-19 11:02:34
功能适用性
该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版暂不支持仲裁服务功能。
使用租户级的仲裁服务时,需要配置日志流降级控制时间。当半数 F 副本故障导致日志同步失败并且达到日志流降级控制时间时,仲裁服务会自动执行日志流降级流程来恢复服务。日志流自动降级的控制时间默认为 5s,该值也表示在出现机房故障时服务中断的时间。
操作步骤
sys租户或用户租户的租户管理员登录到数据库。连接示例如下,连接数据库时请以实际环境为准。
obclient -h10.xx.xx.xx -P2883 -uroot@sys#obdemo -p***** -A有关更加详细的连接数据库的操作指引,参见 连接数据库概述(MySQL 模式) 和 连接数据库概述(Oracle 模式)。
查看租户仲裁服务的日志流降级控制时间。
系统租户查询指定租户
SHOW PARAMETERS LIKE 'arbitration_timeout' TENANT = 'tenant_name';查询租户
mysql仲裁服务的日志流降级控制时间的示例如下:obclient> SHOW PARAMETERS LIKE 'arbitration_timeout' TENANT = 'mysql';用户租户查询本租户
obclient> SHOW PARAMETERS LIKE 'arbitration_timeout';
查询结果如下。
+-------+----------+----------------+----------+---------------------+-----------+-------+---------------------------------------------------------------------------------------------+---------+--------+---------+-------------------+---------------+-----------+ | zone | svr_type | svr_ip | svr_port | name | data_type | value | info | section | scope | source | edit_level | default_value | isdefault | +-------+----------+----------------+----------+---------------------+-----------+-------+---------------------------------------------------------------------------------------------+---------+--------+---------+-------------------+---------------+-----------+ | zone1 | observer | 172.xx.xxx.xxx | 2882 | arbitration_timeout | TIME | 5s | The timeout before automatically degrading when arbitration member exists. Range: [3s,+∞] | TRANS | TENANT | DEFAULT | DYNAMIC_EFFECTIVE | 5s | 1 | +-------+----------+----------------+----------+---------------------+-----------+-------+---------------------------------------------------------------------------------------------+---------+--------+---------+-------------------+---------------+-----------+ 1 row in set根据使用场景,选择合适的语句修改日志流降级控制时间。
租户级配置项
arbitration_timeout用于设置触发日志流自动降级的控制时间。其默认值为 5s,取值范围为 [3s, +∞)。如果不希望发生降级,可以设置一个足够大的值,例如 30d(30 天)。该配置项配置后实时生效,不需要重启 OBServer 节点。用户租户修改本租户的日志流降级控制时间
obclient> ALTER SYSTEM SET arbitration_timeout = '10s';sys租户修改指定租户的日志流降级控制时间obclient> ALTER SYSTEM SET arbitration_timeout = '10s' TENANT = 'tenant_name';sys租户修改所有用户租户(不含sys租户和 Meta 租户)的日志流降级控制时间obclient> ALTER SYSTEM SET arbitration_timeout = '10s' TENANT = all_user;或者
obclient> ALTER SYSTEM SET arbitration_timeout = '10s' TENANT = all;说明
OceanBase 数据库从 V4.2.1 版本开始,
TENANT = all_user与TENANT = all语义相同,在需要生效范围为所有用户租户时,推荐使用TENANT = all_user,后续TENANT = all将废弃不再使用。
相关文档
更多仲裁服务相关的信息,请参见以下内容: