15.backup-and-restoration-3.md•3.93 kB
# OceanBase 集群备份与恢复 API 文档
---
## 一、集群备份策略管理
### 1. 创建集群的备份策略
**功能**:设置集群的备份调度、存储及阈值配置
**路径**:`POST /api/v2/ob/clusters/{id}/backup/config/backupStrategy`
**请求参数**:
| 参数 | 类型 | 必选 | 示例值 | 描述 |
|------|------|------|--------|------|
| id | Integer | 是 | 1 | 集群ID |
**请求体结构**:
```json
{
"backupMode": "PHYSICAL_BACKUP",
"obBackupScheduleConfig": {
"backupScheduleMode": "WEEK",
"backupScheduleTime": "02:00:00.000+08:00",
"dayAndDataBackupModelMap": {"2": "FULL_BACKUP"},
"startLogBackup": true
},
"obBackupServiceStorageConfig": {
"configName": "nfs0907",
"obBackupStorageBaseInfo": {
"backupStorageType": "BACKUP_STORAGE_FILE",
"storageUrl": "/obbackup/"
}
}
}
```
**返回结果**:
```json
{
"data": {
"backupObjectOpsResultList": [{
"taskIdList": [3000041]
}]
}
}
```
---
### 2. 修改集群的备份策略
**功能**:更新备份策略的配置
**路径**:`PATCH /api/v2/ob/clusters/{id}/backup/config/backupStrategy`
**请求参数**:与创建接口一致,仅更新需修改的字段。
---
### 3. 删除集群的备份策略
**功能**:移除备份策略
**路径**:`DELETE /api/v2/ob/clusters/{id}/backup/config/backupStrategy`
**示例**:
```bash
DELETE /api/v2/ob/clusters/1/backup/config/backupStrategy
```
---
## 二、备份能力与概览
### 1. 查询集群的备份能力
**功能**:获取集群支持的备份模式及条件
**路径**:`GET /api/v2/ob/clusters/{id}/backup/ability`
**返回结构**:
```json
{
"backupAbility": "PHYSICAL_BACKUP",
"obDataBackupSupportAbility": {
"fullBackupEnabled": true
}
}
```
### 2. 查询备份概览
**功能**:获取集群的备份状态与统计信息
**路径**:`GET /api/v2/ob/clusters/{id}/backup/overview`
**关键字段**:
```json
{
"lastDataBackupTime": "2021-09-16T17:25:02",
"logBackupDelaySeconds": 98
}
```
---
## 三、备份执行与任务管理
### 1. 立即触发备份
**功能**:手动执行一次集群备份
**路径**:`POST /api/v2/ob/clusters/{id}/backup/backupNow`
**请求示例**:
```json
{
"backupMode": "PHYSICAL_BACKUP",
"dataBackupMode": "FULL_BACKUP"
}
```
### 2. 查询数据备份任务
**功能**:获取数据备份任务列表
**路径**:`GET /api/v2/ob/clusters/{id}/backup/task/dataBackupTasks`
**参数**:
| 参数 | 类型 | 必选 | 示例值 | 描述 |
|------|------|------|--------|------|
| backupSetId | Long | 否 | 23 | 过滤特定备份集 |
---
## 四、恢复操作
### 1. 发起租户恢复
**功能**:将租户恢复到目标集群
**路径**:`POST /api/v2/ob/clusters/{id}/backup/restore`
**请求示例**:
```json
{
"backupTenantStatus": "ONLINE",
"restoreOnlineTenantRequiredParam": {
"restoreTenantInfoParam": {
"zones": [{
"resourcePool": {"unitSpecName": "S1"}
}]
}
}
}
```
---
## 五、备份信息解析与查询
### 1. 解析备份信息
**功能**:获取可恢复的时间范围与详细信息
**路径**:`GET /api/v2/ob/clusters/{id}/backup/info`
**返回示例**:
```json
{
"obRecoverableInfoAggregation": {
"latestSevenDaysAggregation": {
"obRecoverableSectionItems": [{
"recoverableTime": "2021-09-16T17:25:02"
}]
}
}
}
```
---
## 六、错误与注意事项
1. **参数一致性**:所有`backupMode`参数取值需严格为`LOGICAL_BACKUP`或`PHYSICAL_BACKUP`。
2. **版本依赖**:二次备份功能仅支持OB V2.2.77及以上版本。
3. **存储配置**:OSS/COS存储时需提供对应访问密钥信息。
---
## 附录:通用返回结构
```json
{
"data": { ... },
"successful": true,
"timestamp": "2021-09-23T14:49:34.885+08:00",
"status": 200
}
```