OceanBase分布式V4.2.1,生产环境
之前集群中有一台服务器意外重启,之后所有的租户备份任务都失败
备份任务的失败原因中显示重启的那一台服务器result: -9011(cannot find backup file)
但可以从那台服务器直接访问挂载的NFS盘上备份的存储目录
rootserver.log中记录
[2026-09-07 09:50:23.724126] INFO get_file_length (ob_storage.cpp:585) [2995309][T1005_BackupDat][T1005][YB42AC1300C1-000643A9AAC38856-0-0] [lt=26] cannot get file length for not exist file(ret=-9011, uri=file:///obbackup/QDPJ/1730785732/tenant_incarnation_1/1006/data/backup_set_309_full/logstream_1001/meta_info_turn_1_retry_0/ls_meta_info.obbak)
实际查询后发现/obbackup/QDPJ/1730785732/tenant_incarnation_1/1006/data/backup_set_309_full/目录下仅有logstream_1子目录而不存在logstream_1001子目录
1 个赞
论坛小助手
2026 年9 月 8 日 00:11
#4
根据您提供的信息,备份任务失败的原因是无法找到指定的备份文件(错误码 -9011),且在日志中指出某个特定路径下的文件不存在。这与文档片段 3 中提到的情况较为相似,即备份信息缺失或不一致的问题。
分析
错误现象 :集群中某台服务器重启后,租户备份任务失败,错误码为 -9011 (cannot find backup file)。
日志信息 :尝试访问一个不存在的目录 logstream_1001,但实际上该目录并不存在,仅存在 logstream_1 子目录。
可能的原因及解决方法
备份文件路径错误 :
检查备份任务配置,确认是否正确指定了备份文件的路径。确保备份文件路径与实际存在的路径一致。
根据您的描述,logstream_1001 目录不存在,但 logstream_1 存在。可能是备份任务配置中的路径写错了。
备份文件丢失 :
确认备份文件是否确实丢失。检查 NFS 挂载点上的其他备份文件是否完整,是否存在其他类似的路径错误。
如果备份文件确实丢失,需要恢复丢失的备份文件或重新执行备份任务。
日志归档问题 :
根据文档片段 2,如果是 OBServer 节点的日志归档报错,通常不需要人工介入。但如果是 Root Service 的日志,建议联系 OceanBase 技术支持人员进行排查。
NFS 挂载问题 :
根据文档片段 10,可能存在 OBServer 节点与备份介质(如 NFS)之间的连接问题。确保所有节点都能正确访问 NFS 挂载点,并且有正确的权限。
解决步骤
检查备份配置 :
确认备份任务配置中的路径是否正确,特别是 logstream_1001 是否应该为 logstream_1。
修改备份任务配置,确保路径正确。
验证备份文件 :
检查 NFS 挂载点上的备份文件是否完整,是否存在其他路径错误。
如果备份文件丢失,需要恢复丢失的文件或重新执行备份任务。
联系技术支持 :
如果上述步骤无法解决问题,建议联系 OceanBase 技术支持人员,提供详细的日志信息和备份配置,以便进一步排查问题。
参考文档
备份信息不存在
错误原因:备份信息不存在。
解决方式:请联系 OceanBase 技术支持人员协助排查。
OSS 遇到未知错误
错误原因:OSS 遇到未知错误。
解决方式:联系 OSS 技术支持人员,排查具体原因。
希望这些信息对您有所帮助。如果问题仍然存在,请联系 OceanBase 的技术支持以获取进一步的帮助。
检索到的文档如下:
9000 ~ 9499
4000 ~ 4499
6000 ~ 6999
4500 ~ 4999
OceanBase 数据库 TPC-H 测试
淇铭
2026 年9 月 8 日 09:30
#5
相同时间下的observer.log的日志 有么? ob的具体版本查一下
– Step 1: 备份 Job 状态
SELECT JOB_ID, BACKUP_SET_ID, STATUS, RESULT, COMMENT
FROM oceanbase.CDB_OB_BACKUP_JOBS
WHERE TENANT_ID = 1006 AND BACKUP_SET_ID = 309;
– Step 2: 备份集 Task 状态(看卡在哪个阶段)
SELECT TASK_ID, STATUS, RESULT, META_TURN_ID, COMMENT, PATH
FROM oceanbase.CDB_OB_BACKUP_TASKS
WHERE TENANT_ID = 1006 AND BACKUP_SET_ID = 309;
– Step 3: 各 LogStream 任务详情(核心)
SELECT ls_id, task_type, status, result, turn_id, retry_id,
svr_ip, svr_port, comment
FROM oceanbase.__all_virtual_backup_ls_task
WHERE tenant_id = 1006 AND backup_set_id = 309
ORDER BY ls_id;
– Step 4: 若任务已结束,查历史
SELECT ls_id, task_type, status, result, turn_id, retry_id,
svr_ip, svr_port, comment
FROM oceanbase.__all_virtual_backup_ls_task_history
WHERE tenant_id = 1006 AND backup_set_id = 309
ORDER BY ls_id;