基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
Binlog 集群报错 request start lsn from all server fail
更新时间:2025-07-04 06:11
适用版本
obbinlog V4.x 及之后版本。
问题描述
Binlog 高可用集群中,模拟 Binlog 实例主节点故障,高可用切换之后日志中报错 request start lsn from all server fail。
问题原因
可能因为在 Binlog 切换之后,新的 Binlog 实例主节点在获取业务租户的 clog 日志时,因 clog 已经被清理,导致无法继续获取日志。
根据集群是否开启归档,可使用如下方法检查是否缺失 clog 日志。
未开启归档时执行如下命令查看:
SELECT usec_to_time(CEIL(MAX(BEGIN_SCN)/1000)) AS START_TS_US FROM oceanbase.GV$OB_LOG_STAT;若 Binlog 实例主节点故障时间在上述 SQL 查询结果时间之前,说明 clog 日志有部分被清空,日志获取不完全,无法继续传输。
开启归档
SELECT usec_to_time(CEIL(MAX(START_SCN)/1000)) as START_TS_US FROM oceanbase.DBA_OB_ARCHIVELOG;若 Binlog 实例主节点故障时间在上述 SQL 查询结果时间之前,说明归档日志有部分被清理,日志获取不完全,无法继续传输。
解决方法
因日志获取不完全导致该 Binlog 实例如法继续执行传输,您可为业务租户重新创建 Binlog 实例,命令如下。
CREATE BINLOG INSTANCE binlog1 FOR `${cluster_name}`.`${tenant_name}` CLUSTER_URL='${config_url}';
需根据实际情况对应修改命令中的如下内容,命令具体介绍可参见官网《OceanBase Binlog 服务》文档 创建 Binlog 实例。
${cluster_name}:业务租户所属的集群名。${tenant_name}:业务租户名。${config_url}:业务集群的 config url,可通过SHOW PARAMETERS LIKE 'obconfig_url';获得(value值)。
说明
建议开启日志归档,长期保存 clog 日志。具体操作可参见官网《OceanBase 数据库》文档 日志归档 章节。