目录标题
📘 OceanBase 全量备份与归档分析报告
基于备份路径示例:/home/admin/ob_backup/<tenant_name>/
1️⃣ 全量备份目录(full/)分析
📊 1. 整体统计
| 项目 | 数值 |
|---|---|
| 总文件数 | 92 个 |
| 总大小 | 101 MB |
| 备份集数量 | 2 个(backup_set_7_full、backup_set_8_full) |
📂 2. 目录结构(优化注释)
full/
├── format.obbak # 全量备份格式描述文件(全局元数据)
├── check_file/ # 备份连通性检查文件
│ └── 1002_connect_file_xxx.obbak
├── backup_sets/ # 备份集元信息(索引文件)
│ ├── backup_set_7_full_start.obbak
│ ├── backup_set_8_full_start.obbak
│ └── backup_set_8_full_end_success_xxx.obbak
├── backup_set_7_full/ # 备份集 7(失败)
│ ├── logstream_1/
│ └── logstream_1001/
└── backup_set_8_full/ # 备份集 8(成功)⭐⭐推荐使用
├── logstream_1/
│ ├── meta_info_turn_1_retry_0/
│ ├── sys_data_turn_1_retry_0/
│ ├── minor_data_turn_1_retry_0/
│ └── major_data_turn_1_retry_0/ # 最大 9.2MB
├── logstream_1001/
└── complement_log/ # 补充归档日志 ⭐
├── piece_xxx/
├── pieces/
└── rounds/
📑 3. 文件类型说明
| 文件类型 | 示例 | 说明 |
|---|---|---|
| 宏块数据文件 | macro_block_data.0.obbak | 数据页内容(major/minor/sys) |
| 元信息文件 | tablet_info.1.obbak | Tablet 元数据 |
| 索引文件 | meta_index.obbak | 元数据索引 |
| 补充归档日志 | complement_log/* | 保证备份一致性所需的日志 |
文件大小特征(成功备份集):
- major 数据最大:9.2MB
- minor 数据:4.9MB
- sys 数据:1.9MB
- tablet_info:2.4MB
✅ 备份完整性正常
📌 4. 备份集状态分析
❌ backup_set_7_full(失败)
- 错误码:-4016
- 原因:IO 失败(归档阶段)
- 结果:不可用于恢复

✅ backup_set_8_full(成功)
- 具备完整备份结构
- 包含 complement_log
- 可直接用于恢复 ⭐
2️⃣ 归档目录(archive/)分析
📊 1. 整体统计
| 项目 | 数值 |
|---|---|
| 总文件数 | 10 个 |
| 总大小 | 65 MB |
| 当前归档片段 | piece_d1006r2p9 |
📂 2. 目录结构
archive/
├── format.obbak # 归档格式文件
├── check_file/ # 连通性检查
│ └── 1002_connect_file_xxx.obbak
├── rounds/ # 归档轮次
│ └── round_d1006r2_start.obarc
├── pieces/ # 归档片段信息
│ └── piece_d1006r2p9_start_xxx.obarc
└── piece_d1006r2p9/ # 当前活跃归档片段 ⭐
├── tenant_archive_piece_infos.obarc
├── checkpoint/ # 检查点 ✔️正常刷新
├── logstream_1/
│ └── log/
│ └── 13.obarc (54MB) ⭐最大
└── logstream_1001/
└── log/
└── 12.obarc (12MB)
✅ 归档连续性正常
- 最新归档日志文件不断增长
- 检查点不断推进
- schema_meta 存在
3️⃣ 数据完整性与风险分析
| 检查项 | 状态 | 说明 |
|---|---|---|
| 全量备份结构 | ✔️ | sys/minor/major 文件完整 |
| 补充归档日志 | ✔️ | backup_set_8 完整包含 |
| 归档连续性 | ✔️ | logstream*/log 文件连续 |
| 元数据文件 | ✔️ | format、schema_meta、checkpoint 完整 |
| 存储空间 | ⚠️ | 归档日志仍在增长,应监控 NFS 容量 |
| 存在失败备份集 | ⚠️ | backup_set_7 可清理 |
4️⃣ 建议与后续操作
1. 清理失败的备份集
rm -rf /home/admin/ob_backup/<tenant_name>/full/backup_set_7_full/
2. 持续监控归档目录大小
3. 使用 backup_set_8_full 做恢复测试(推荐)
4. 保证 NFS 高可用、稳定
避免再次出现 -4016 IO 错误
5️⃣ OceanBase 全量备份 + 归档操作手册
⭐ 1. 挂载 NFS(备份与归档前置条件)
mkdir -p /home/admin/ob_backup/<tenant_name>
mount <NFS_SERVER_IP>:/opt/qfusion/lgdnfs /home/admin/ob_backup/<tenant_name>
⭐ 2. 开启归档模式
设置归档路径
ALTER SYSTEM SET LOG_ARCHIVE_DEST='LOCATION=file:///home/admin/ob_backup/<tenant_name>/archive'
TENANT = <tenant_name>;
开启归档
ALTER SYSTEM ARCHIVELOG TENANT = <tenant_name>;
验证归档状态
SELECT t.tenant_name, t.log_mode, a.status, a.path
FROM oceanbase.dba_ob_tenants t
LEFT JOIN oceanbase.cdb_ob_archivelog a ON t.tenant_id = a.tenant_id
WHERE tenant_name = '<tenant_name>';
⭐ 3. 创建全量备份
查看是否已有 DATA_BACKUP_DEST
SELECT t.tenant_id, t.tenant_name, b.value data_backup_dest
FROM oceanbase.dba_ob_tenants t
LEFT JOIN oceanbase.cdb_ob_backup_parameter b ON t.tenant_id = b.tenant_id
WHERE t.tenant_name = '<tenant_name>';
设置全量备份路径
ALTER SYSTEM SET DATA_BACKUP_DEST =
'file:///home/admin/ob_backup/<tenant_name>/full'
TENANT = <tenant_name>;
执行全量备份(包含归档日志)
ALTER SYSTEM BACKUP TENANT = <tenant_name> PLUS ARCHIVELOG;
查看备份任务执行情况
SELECT * FROM oceanbase.cdb_ob_backup_jobs;
查看备份历史
SELECT * FROM oceanbase.cdb_ob_backup_job_history;
⭐ 4. 可选:恢复设置
若租户原本未开启归档/备份路径,可在全量备份后恢复原配置:
关闭归档
ALTER SYSTEM NOARCHIVELOG TENANT = <tenant_name>;
清空归档路径
ALTER SYSTEM SET LOG_ARCHIVE_DEST='' TENANT = <tenant_name>;
清空全备路径
ALTER SYSTEM SET DATA_BACKUP_DEST='' TENANT = <tenant_name>;
430

被折叠的 条评论
为什么被折叠?



