機能説明
バックアップ戦略を変更するために使用します。
呼び出し説明
インターフェース制約
呼び出し元はマルチクラウドAPIにアクセスするためのキーを保有している必要があります。AccessKey IDとAccessKey Secretの取得方法の詳細については、アクセスキーの管理をご参照ください。
リクエストパス
POST /api/v2/instances/{instanceId}/backup/strategy
リクエストパラメータ
Path
パラメータ名 |
型 |
必須 |
説明 |
|---|---|---|---|
| instanceId | String | はい | OceanBaseクラウドデータベースインスタンスID |
Query
パラメータ名 |
型 |
必須 |
説明 |
|---|---|---|---|
| requestId | String | はい | リクエストID。追跡に使用されます |
Body
パラメータ名 |
型 |
必須 |
説明 |
サンプル値 |
|---|---|---|---|---|
| instanceId | String | はい | インスタンスID | obxxx |
| backupschedulemode | String | はい | スケジューリングモード:
|
WEEK |
| scheduleTime | String | はい | バックアップ実行の具体的な時刻(UTC時間形式) | 20:00:00Z |
| timeList | List |
はい | バックアップ実行の時間リスト。具体的な意味はbackupScheduleModeによって異なります。
|
[1, 3, 5] |
| lastDayOfMonth | Boolean | いいえ | 毎月の最終日にバックアップを実行するかどうか(月単位でスケジュールする場合にのみ有効)。trueに設定した場合、その月の日数に関係なく、毎月の最終日にバックアップが実行されます。デフォルトはfalseです。 |
false |
| dataMaintainDays | Integer | はい | ローカルバックアップデータの保持日数。推奨範囲は1-365日です。 | 7 |
| retainMode | String | はい | バックアップ保持モード。バックアップファイルの保持ポリシーを定義します:
|
TIME |
| backupStorageConfig | string | はい | バックアップストレージ設定(JSON文字列)。 | - |
| -backupStorageType | String | はい | バックアップストレージタイプ。 | COS |
| crossRegionFlag | Boolean | いいえ | オフサイトバックアップ機能を有効にするかどうか。デフォルトはfalseです。 | false |
| isCrossBorder | Boolean | いいえ | オフサイトバックアップが国境を越えるかどうか(国/地域をまたぐ場合)。デフォルトはfalseです。 | false |
| remoteBackupRegion | String | いいえ | オフサイトバックアップのターゲットリージョン(Region)。デフォルトは空です。 | cn-hangzhou |
| remoteBackupStrategy | object | いいえ | オフサイトバックアップ戦略の詳細設定。 | - |
| -backupScheduleMode | String | はい | オフサイトバックアップスケジューリングモード:
|
WEEK |
| -timeList | List |
はい | オフサイトバックアップの実行時間リスト。プライマリバックアップ戦略のtimeListと同様ですが、文字列リストです。 | [1, 3, 5] |
| -backupTimesInMonth | String | はい | 毎月のオフサイトバックアップ実行回数の説明。"FIRST", "SECOND", "THIRD", "FOURTH", "LAST"など | FIRST |
| -dataMaintainDays | Integer | はい | オフサイトバックアップデータの保持日数。[7,720]の範囲をサポートします。 | 7 |
| archiveFlag | Boolean | いいえ | アーカイブバックアップ機能を有効にするかどうか。デフォルトはfalseです。 | false |
| archiveBackupStrategy | object | いいえ | アーカイブバックアップ戦略の詳細設定。 | - |
| -backupScheduleMode | String | はい | アーカイブバックアップスケジューリングモード:
|
WEEK |
| -timeList | List |
はい | アーカイブバックアップの実行時間リスト。プライマリバックアップ戦略のtimeListと同様ですが、文字列リストです。 | [1, 3, 5] |
| -backupTimesInMonth | String | はい | 毎月のアーカイブバックアップ実行回数の説明。"FIRST", "SECOND", "THIRD", "FOURTH", "LAST"など | FIRST |
| -dataMaintainDays | Integer | はい | アーカイブバックアップデータの保持日数。 | 7 |
| archiveBackupCleanMode | String | いいえ | アーカイブバックアップのクリーンアップモード。デフォルトは"DELETE"。
|
DELETE |
| sparseBackupFlag | Boolean | いいえ | スパースバックアップ機能を有効にするかどうか。デフォルトはfalseです。 | false |
| sparseBackupStrategies | object | いいえ | スパースバックアップ戦略リスト。複数の異なる保持ルールを設定できます。 | - |
| - backupMaintainMatchRule | object | はい | バックアップマッチングルール。どのバックアップがこの保持戦略に該当するかを定義します。 | - |
| -- backupScheduleMode | String | はい | マッチングするスケジューリングモード:
|
WEEK |
| -- weeks | List |
はい | 週単位でマッチングする場合に使用し、何曜日のバックアップを指定します(1-7)。 | [1, 7] |
| -- days | List |
はい | 月または年単位でマッチングする場合に使用し、日付を指定します。 | [1, 15] |
| -- month | String | はい | 年単位でマッチングする場合に使用し、月を指定します(1-12)。 | 12 |
| - backupMaintainStrategy | object | はい | バックアップ保持戦略。マッチングルールに該当するバックアップの保持方法を定義します。 | - |
| -- backupMaintainMode | String | はい | バックアップ保持モード:
|
PERMANENT |
| -- maintainDay | String | はい | 保持期間(日数)。backupMaintainMode = TEMPORARYの場合に有効です。 | 7 |
| -- reserveLogBackup | String | はい | 対応するログバックアップも同時に保持するかどうか。デフォルトはfalseです。 | false |
戻り値
パラメータ名 |
型 |
説明 |
サンプル値 |
|---|---|---|---|
| data | Object | 空セットを返します | null |
例
リクエスト例
curl --digest -u '<Your AK:SK>' \
-X POST \
'https://api-cloud.oceanbase.com/api/v2/instances/{instanceId}/backup/strategy?requestId={requestId}' \
-H "Content-Type: application/json" \
-d '{
"backupScheduleMode": "WEEK",
"scheduleTime": "02:00:00",
"timeList": [1, 3, 5],
"dataMaintainDays": 7
}'
以下に一般的なバックアップポリシーの例をいくつか挙げます。
シナリオ1:基本的な週次バックアップを実施し、毎週月曜日、水曜日、金曜日の午前2時にバックアップを実行し、7日間保持します。
{
"backupScheduleMode": "WEEK",
"scheduleTime": "02:00:00",
"timeList": [1, 3, 5],
"dataMaintainDays": 7
}
シナリオ2:地理的冗長化バックアップを有効にし、毎週日曜日にローカルバックアップを実行すると同時に、毎月の最初の日曜日のバックアップを上海リージョンにコピーして30日間保持します。
{
"backupScheduleMode": "WEEK",
"scheduleTime": "02:00:00",
"timeList": [7],
"dataMaintainDays": 7,
"crossRegionFlag": true,
"isCrossBorder": false,
"remoteBackupRegion": "cn-shanghai",
"remoteBackupStrategy": {
"backupScheduleMode": "week",
"timeList": ["7"],
"backupTimesInMonth": "FIRST",
"dataMaintainDays": 30
}
}
シナリオ3:アーカイブバックアップを有効にし、毎週日曜日にバックアップを実行します。毎月1日のバックアップはアーカイブされ、365日間保持されます。ポリシーを停止した場合も、アーカイブ済みデータは保持されます。
{
"backupScheduleMode": "WEEK",
"scheduleTime": "02:00:00",
"timeList": [7],
"dataMaintainDays": 7,
"archiveFlag": true,
"archiveBackupStrategy": {
"backupScheduleMode": "month",
"timeList": [1],
"dataMaintainDays": 365
},
"archiveBackupCleanMode": "RESERVE"
}
シナリオ4:疎バックアップポリシー
- 毎日バックアップを実行し、デフォルトで7日間保持します。
- 毎週日曜日のバックアップは30日間保持します。
- 毎月1日のバックアップは365日間保持します。
- 長期間保持されるすべてのバックアップに対して、ログも同時に保持します。
{
"backupScheduleMode": "WEEK",
"scheduleTime": "02:00:00",
"timeList": [1, 2, 3, 4, 5, 6, 7],
"dataMaintainDays": 7,
"sparseBackupFlag": true,
"sparseBackupStrategies": [
{
"backupMaintainMatchRule": {
"backupScheduleMode": "WEEK",
"weeks": [7]
},
"backupMaintainStrategy": {
"backupMaintainMode": "TEMPORARY",
"maintainDay": 30,
"reserveLogBackup": true
}
},
{
"backupMaintainMatchRule": {
"backupScheduleMode": "MONTH",
"days": [1]
},
"backupMaintainStrategy": {
"backupMaintainMode": "TEMPORARY",
"maintainDay": 365,
"reserveLogBackup": true
}
}
]
}
戻り値の例
JSON形式
{
"data":{},
"requestId":"275168e0-4c98-4e30-9b1e-64393e79ee73",
"success":true
}