ADD DELETE BACKUP POLICY ステートメントと DROP DELETE BACKUP POLICY ステートメントは、それぞれクリーンアップポリシーの設定と削除に使用されます。
ユーザーに自動クリーンアップ機能を有効にする必要がある場合は、ADD DELETE BACKUP POLICY ステートメントを使用してテナントのクリーンアップポリシーを設定します。クリーンアップポリシーが設定されたテナントは、毎時間1回の自動クリーンアップタスクがトリガーされます。
クリーンアップタスクの実行中に、実行中のクリーンアップタスクのみをキャンセルしたい場合は、CANCELE DELETE BACKUP ステートメントを実行します。CANCELE DELETE BACKUP ステートメントの詳細については、CANCEL DELETE BACKUPを参照してください。キャンセルしたいクリーンアップタスクが今後スケジュールされないようにするには、まず DROP DELETE BACKUP POLICY ステートメントを実行して自動クリーンアップポリシーを削除し、その後 CANCELE DELETE BACKUP ステートメントを実行して実行中のクリーンアップタスクをキャンセルする必要があります。
使用上の制限と注意事項
ADD DELETE BACKUP POLICYステートメントを使用してクリーンアップポリシーを設定する場合、テナントレベルの自動クリーンアップポリシーの設定のみをサポートし、クラスタレベルのクリーンアップポリシーの設定はサポートしません。各コマンドは、1つのテナントに対して1つのクリーンアップポリシーのみを設定または削除できます。
DROP DELETE BACKUP POLICYステートメントを使用してテナントのクリーンアップポリシーを削除する場合、テナント内のすべてのクリーンアップポリシーが削除された後、そのテナントの自動クリーンアップ機能はオフになります。DROP DELETE BACKUP POLICYステートメントでクリーンアップポリシーを削除しても、実行中のクリーンアップタスクには影響しません。これは、システムが次回自動クリーンアップをスケジュールする際、削除されたクリーンアップポリシーに基づいてクリーンアップタスクが生成されないことを意味します。
権限要件
sys テナントの root ユーザー(root@sys)または各テナントの管理者ユーザーが実行する必要があります。具体的には:
- MySQLモードのデフォルト管理者ユーザーは
rootユーザーです。 - Oracleモードのデフォルト管理者ユーザーは
SYSユーザーです。
構文
ALTER SYSTEM delete_backup_action [ TENANT [=] tenant_name ];
delete_backup_action:
ADD DELETE BACKUP POLICY [=] policy_name [RECOVERY_WINDOW [=] recovery_window]
| DROP DELETE BACKUP POLICY [=] policy_name
パラメータ説明
パラメータ |
説明 |
|---|---|
| POLICY | クリーンアップポリシー名を指定します。以下の値をサポートします:
|
| RECOVERY_WINDOW | バックアップデータの復元可能な時間窓を制御します。オプションです。このパラメータを明示的に指定しない場合、デフォルトではバックアップデータの復元可能な時間窓は0日となり、バックアップセットは期限切れにならず、システムはクリーンアップを実行しません。このパラメータの詳細については、バックアップクリーンアップ関連パラメータの紹介を参照してください。 |
| tenant_name | テナント名を指定します。オプションです。システムテナントで実行する場合にのみ指定が必要です。 |
例
システムテナント
システムテナントが
mysql_tenantテナントのクリーンアップポリシーをdefaultに設定し、バックアップデータの復元可能時間窓を7日間に設定します。obclient [oceanbase]> ALTER SYSTEM ADD DELETE BACKUP POLICY = 'default' RECOVERY_WINDOW ='7d' TENANT = mysql_tenant;設定成功後、以下のステートメントでこのテナントに設定されたクリーンアップポリシーを確認できます。
obclient [oceanbase]> SELECT * FROM oceanbase.CDB_OB_BACKUP_DELETE_POLICY WHERE TENANT_ID=1002;クエリ結果は次のとおりです:
+-----------+-------------+-----------------+ | TENANT_ID | POLICY_NAME | RECOVERY_WINDOW | +-----------+-------------+-----------------+ | 1002 | default | 7d | +-----------+-------------+-----------------+ 1 row in setシステムテナントが
mysql_tenantテナントのクリーンアップポリシーdefaultを削除します。obclient [oceanbase]> ALTER SYSTEM DROP DELETE BACKUP POLICY 'default' TENANT mysql_tenant;
ユーザーテナント
テナント
oracle_tenantが自身のクリーンアップポリシーをdefaultに設定し、バックアップデータの復元可能時間窓を7日間に設定します。obclient [SYS]> ALTER SYSTEM ADD DELETE BACKUP POLICY 'default' RECOVERY_WINDOW '7d';設定成功後、以下のステートメントで自身のテナントに設定されたクリーンアップポリシーを確認できます。
obclient [SYS]> SELECT * FROM SYS.DBA_OB_BACKUP_DELETE_POLICY;クエリ結果は次のとおりです:
+-------------+-----------------+ | POLICY_NAME | RECOVERY_WINDOW | +-------------+-----------------+ | default | 7d | +-------------+-----------------+ 1 row in setテナント
oracle_tenantが自身のクリーンアップポリシーを削除します。obclient [SYS]> ALTER SYSTEM DROP DELETE BACKUP POLICY 'default';