首批通过分布式安全可靠测评,为关键业务系统打造
OceanBase 数据库集群升级后备份报错 backup can not start, because inner table version is too old, waiting backup inner table upgrade 的原因及解决方法
更新时间:2026-05-11 09:51
问题现象
OceanBase 数据库集群升级后备份报错 backup can not start, because inner table version is too old, waiting backup inner table upgrade。
关键日志信息。
[2024-09-26 14:45:40.402966] WDIAG [SHARE] ob_backup_path.cpp:1922 [57125][0][xxxxx-xxxxx-xxxxx-xxxxx] [lt=53] [dc=0][errcode=-4002] invalid argument!(ret=-4002, param={tenant_id:1, incarnation:1, copy_id:0, full_set_id:470, inc_set_id:470, backup_date:0, compatible:1, backup_dest_ptr:0x7ef5e58cd668}, buffer_length=2048, buffer=0x7f0a651a7ca0)
[2024-09-26 14:45:40.402984] WDIAG [SERVER] ob_backup_operator.cpp:2784 [57125][0][xxxxx-xxxxx-xxxxx-xxxxx] [lt=6] [dc=0][errcode=-4002] fail to get backup set relative path(ret=-4002, param={tenant_id:1, incarnation:1, copy_id:0, full_set_id:470, inc_set_id:470, backup_date:0, compatible:1, backup_dest_ptr:0x7ef5e58cd668}, item={tenant_id:1, backup_set_id:470, incarnation:1, copy_id:0, snapshot_version:1718143203109619, prev_full_backup_set_id:0, prev_inc_backup_set_id:0, prev_backup_data_version:0, pg_count:0, macro_block_count:0, finish_pg_count:0, finish_macro_block_count:0, input_bytes:0, output_bytes:0, start_time:1718143203109619, end_time:1718150047783261, compatible:1, cluster_version:8590065740, backup_type:{type:1}, status:1, result:0, cluster_id:3100001, backup_dest:"oss://ob-backup/backup?host=oss-xxxxx-xxxxx-xxxxx-xxxxx-xxxxx.xxxxx.com&access_id=xxxxx&access_key=xxxxx", backup_data_version:1330, backup_schema_version:1704945449571840, partition_count:0, finish_partition_count:0, encryption_mode:0, passwd:"", file_status:0, start_replay_log_ts:0, date:0, backup_level:0})
[2024-09-26 14:45:40.402997] WDIAG [SERVER] ob_backup_operator.cpp:3192 [57125][0][xxxxx-xxxxx-xxxxx-xxxxx] [lt=4] [dc=0][errcode=-4002] failed to fill on item(ret=-4002, dest_backup_set_file_info={tenant_id:1, backup_set_id:470, incarnation:1, copy_id:0, snapshot_version:1718143203109619, prev_full_backup_set_id:0, prev_inc_backup_set_id:0, prev_backup_data_version:0, pg_count:0, macro_block_count:0, finish_pg_count:0, finish_macro_block_count:0, input_bytes:0, output_bytes:0, start_time:1718143203109619, end_time:1718150047783261, compatible:1, cluster_version:8590065740, backup_type:{type:1}, status:1, result:0, cluster_id:3100001, backup_dest:"oss://ob-backup/backup?host=oss-xxxxx-xxxxx-xxxxx-xxxxx-xxxxx.xxxxx.com&access_id=xxxxx&access_key=xxxxx", backup_data_version:1330, backup_schema_version:1704945449571840, partition_count:0, finish_partition_count:0, encryption_mode:0, passwd:"", file_status:0, start_replay_log_ts:0, date:0, backup_level:0})
问题原因
OceanBase 数据库集群升级后,因为 OceanBase 数据库的一些兼容性 BUG,导致 __all_backup_set_files 的 date 出现无效值 0,导致 __all_backup_info 表的 inner_table_version 列没有推高版本,出现全备报错 backup can not start, because inner table version is too old, waiting backup inner table upgrade。
问题的风险及影响
全备失败。
影响租户
影响 OceanBase 数据库中的 SYS 租户和 Oracle 租户以及 MySQL 租户。
适用版本
OceanBase 数据库 V3.x 版本。
解决方法
删除 __all_backup_set_files 表中 date 为 0 的记录。
警告
删除内部表中的记录存在一定的风险,请勿独自操作。如果需要进行此操作,请联系 OceanBase 技术支持团队。