【 使用环境 】生产环境 or 测试环境
【 OB or 其他组件 】
【 使用版本 】
【问题描述】清晰明确描述问题
【复现路径】问题出现前后相关操作
【附件及日志】推荐使用OceanBase敏捷诊断工具obdiag收集诊断信息,详情参见链接(右键跳转查看):
【SOP系列 22 】——故障诊断第一步(自助诊断和诊断信息收集)
【备注】基于 LLM 和开源文档 RAG 的论坛小助手已开放测试,在发帖时输入 [@论坛小助手 ] 即可召唤小助手,欢迎试用!
因为测试需要, 我们手工做了某个租户aa 在8/13 号11:00 的租户级别的全量备份, 然后开发每天都要求我们做一遍租户级别的恢复
恢复到时间点 8/13 号11:00 , 我的问题是,我通过备份 恢复了该租户后,恢复是成功的,尝试查询之前在8/13 号当天11:00的备份记录和备份片的位置,没有找到该记录?
我的查询方法:
select * from cdb_ob_backup_set_files
select * from CDB_OB_BACKUP_JOB_HISTORY
现在我的问题是如何用SQL; 查询之前在8/13 号当天11:00的备份记录和备份片的位置?
以下是我的恢复记录:
ID 备份集群 备份租户 备份方式 目标集群 目标租户 恢复对象 开始时间 恢复时长
状态
操作
47
obclu_test_ntest2
re_bt 物理备份 obclu_test_ntest2 re_bt
租户
2024年8月16日 10:18:34 13分钟55秒 已完成
备份方式
物理备份
恢复时间点
2024年8月13日 11:10:00
结束时间
2024年8月16日 10:32:29
存储目录
旭辉
2024 年8 月 16 日 15:20
#3
可以在用户租户下查看下:
-租户查看 JOB 级任务历史(租户发起一次备份即对应一条 JOB 任务记录)
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY\G;
–租户查看 Task 级任务历史(一个 Task 对应一个备份集的任务)
SELECT * FROM oceanbase.DBA_OB_BACKUP_TASK_HISTORY\G;
–租户查看查看对应的备份集信息
SELECT * FROM oceanbase.DBA_OB_BACKUP_SET_FILES WHERE BACKUP_SET_ID = 1 \G;
-租户查看 JOB 级任务历史(租户发起一次备份即对应一条 JOB 任务记录)
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY\G;
–in sys 租户 result: ->可以查到 08/13 10:49 发起的备份记录:
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY\G;
657 1 0 1 657 1052 OFF FULL CLUSTER NONE 2024-08-13 10:49:52.712899 2024-08-13 11:02:22.946129 COMPLETED 0 ALTER BACKUP TENANT FULL_BACKUP BY BACKUP_NOW AT 2024-08-13 10:49:52.0
–租户查看 Task 级任务历史(一个 Task 对应一个备份集的任务)
SELECT * FROM oceanbase.DBA_OB_BACKUP_TASK_HISTORY\G;
–租户查看查看对应的备份集信息
SELECT * FROM oceanbase.DBA_OB_BACKUP_SET_FILES WHERE BACKUP_SET_ID = 1 \G;
SELECT * FROM oceanbase.DBA_OB_BACKUP_SET_FILES WHERE BACKUP_SET_ID = 1 \G;
-in 租户结果如下: ->只能查看 08/17 05:47: 发起的备份记录 和备份位置:
1 1002 1 FULL 0 0 2024-08-17 05:30:15.724675 2024-08-17 05:47:20.717927 SUCCESS AVAILABLE 1025 OFF 1723809987831055233 2024-08-16 20:06:27.831055 1723844840679490705 2024-08-17 05:47:20.679490705 73530464334 64012962241 62452081.6270 0 10881 10881 35053 35053 0 1 0 0 NONE 4.2.1.7 3 file:///data/obbackup_obclu_test_ndb2/obclu_test_ndb2/1666082002/tenant_incarnation_1/1064/data 4.2.1.7 1723843857647130784 1 1
我的问题是
oceanbase.DBA_OB_BACKUP_JOB_HISTORY 可以查到 08/13 10:49 发起的备份记录,
oceanbase.DBA_OB_BACKUP_SET_FILES 只能 查看 2024-08-17的记录。
我的问题是为啥 08/13 10:49 备份记录的备份集位置没有记住?
旭辉
2024 年8 月 20 日 14:35
#5
请发下数据库版本,
从 oceanbase.DBA_OB_BACKUP_JOB_HISTORY 看BACKUP_SET_ID=1的START_TIMESTAMP为 2024-08-13 10:49:52.712899
从oceanbase.DBA_OB_BACKUP_SET_FILES 看BACKUP_SET_ID=1的START_TIMESTAMP为 2024-08-17 05:30:15.724675
如果是在同一租户(请确定是否为同一租户)查询的这两个视图,这个结果是不符合预期的,麻烦发下这3个查询的结果(全量数据),可以将结果放到附件
–租户查看 JOB 级任务历史(租户发起一次备份即对应一条 JOB 任务记录)
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY\G;
–租户查看 Task 级任务历史(一个 Task 对应一个备份集的任务)
SELECT * FROM oceanbase.DBA_OB_BACKUP_TASK_HISTORY\G;
–租户查看查看对应的备份集信息
SELECT * FROM oceanbase.DBA_OB_BACKUP_SET_FILES \G
AntTech_PZFBUG:
–in sys 租户 result: ->可以查到 08/13 10:49 发起的备份记录:
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY\G;
657 1 0 1 657 1052 OFF FULL CLUSTER NONE 2024-08-13 10:49:52.712899 2024-08-13 11:02:22.946129 COMPLETED 0 ALTER BACKUP TENANT FULL_BACKUP BY BACKUP_NOW AT 2024-08-13 10:49:52.0
这条结果是在sys 租户查询的
–in sys 租户 result: ->可以查到 08/13 10:49 发起的备份记录:
SELECT * FROM oceanbase.DBA_OB_BACKUP_JOB_HISTORY\G;
657 1 0 1 657 1052 OFF FULL CLUSTER NONE 2024-08-13 10:49:52.712899 2024-08-13 11:02:22.946129 COMPLETED 0 ALTER BACKUP TENANT FULL_BACKUP BY BACKUP_NOW AT 2024-08-13 10:49:52.0
旭辉
2024 年8 月 20 日 17:49
#7
你使用的sys租户查询 ,你查下 oceanbase.CDB_OB_BACKUP_JOB_HISTORY,oceanbase.CDB_OB_BACKUP_SET_FILES
看下数据是否对得上
查询结果.7z (139.4 KB)
cdb_backup_job_history 找到8/13 11点备份记录
BACKUP_SET_FILES 找不到?
5.7.25-OceanBase-v4.2.1.7
旭辉
2024 年8 月 23 日 09:51
#13
这个文件用的是DBA_OB_BACKUP_JOB_HISTORY ,麻烦用 CDB_OB_BACKUP_JOB_HISTORY 查询下 取下结果,方便做CDB级数据的对比
旭辉
2024 年8 月 30 日 11:00
#15
CDB_OB_BACKUP_JOB_HISTORY 中虽然有8.13的备份记录但是没有记录备份文件,所以CDB_OB_BACKUP_SET_FILES看不到记录,
同样 7.18,7.19号也是一样,但是看备份的状态是成功的,请确认下是否有文件生成?
旭辉
2024 年8 月 30 日 11:19
#16
这几条备份记录是sys租户的备份记录,sys租户不记录路径的,是符合预期的
7.18,7.19号,7.13日实际上有问题产生,只是在备份的表里一直查不到。所以这个如何解决?
旭辉
2024 年9 月 5 日 18:38
#18
7.18,7.19,8.13号,这3天备份是手动触发的,备份后检查有备份文件生成了吗?
旭辉
2024 年9 月 5 日 19:59
#19
实际上是备份成功的,
你的1046,1050,1052租户被删除了,租户删除后,CDB_OB_BACKUP_JOB_HISTORY 中对应的备份记录(含有path的记录)会被删除,备份文件如果在保留策略内实际上未被删除,这个现象是否符合预期我和这块的同学再确认下。
旭辉
2024 年9 月 9 日 10:26
#20
已确认,租户删除后,CDB_OB_BACKUP_JOB_HISTORY 中对应的备份记录(path的记录)会被删除 是符合预期的,4.x备份和归档都拆到租户下了,相关的备份/归档信息都存储在租户下,删除租户后就没有了。
1 个赞