オブジェクト・ストレージへのデータベースのバックアップ
この記事では、Oracle Cloud Infrastructureによって管理されるバックアップを操作する方法について説明します。これを行うには、コンソールまたはAPIを使用します。
管理対象外バックアップの場合は、RMAN
またはdbcli
を使用でき、バックアップ用に独自のオブジェクト・ストレージ・バケットを作成して管理する必要があります。RMANを使用したオブジェクト・ストレージへのデータベースのバックアップを参照してください。
注意:
以前にRMAN
またはdbcli
を使用してバックアップを構成したが、コンソールまたはバックアップ用のAPIの使用に切り替えた場合は、新しいバックアップ構成が作成され、データベースに関連付けられます。このため、以前に構成した管理対象外のバックアップを使用して作業することはできなくなります。
必要なIAMポリシー
Oracle Cloud Infrastructureを使用するには、管理者からポリシーでセキュリティ・アクセス権が付与されている必要があります。コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。権限を持っていない、または認可されていないというメッセージが表示された場合は、持っているアクセス権のタイプと作業しているコンパートメントを管理者に確認してください。
前提条件
DBシステムには、オブジェクト・ストレージの適切なSwiftエンドポイントへの接続を含む、Oracle Cloud Infrastructure Object Storageサービスへのアクセスが必要です。VCNでサービス・ゲートウェイを使用してこのアクセスを有効にすることをお薦めします。詳細は、次のトピックを参照してください:
- VCNおよびサブネット: DBシステムのVCN(サービス・ゲートウェイを含む)の設定の詳細。
- Oracle Cloud Infrastructure Object Storageをオンプレミス・バックアップの保存先として使用できますか。: 使用するSwiftエンドポイントの詳細。
バックアップ操作を正常に実行するには、データベースとDBシステムが「使用可能な」状態になっている必要があります。バックアップ操作の進行中は、可用性を妨げる可能性のあるアクション(パッチ適用やData Guard操作など)の実行を避けることをお薦めします。自動バックアップ操作が失敗した場合、データベース・サービスは、翌日のバックアップ・ウィンドウ中に操作を再試行します。オンデマンド完全バックアップが失敗した場合は、DBシステムおよびデータベースの可用性がリストアされたときに操作を再試行できます。
バックアップの失敗を避けるために、リストされている前提条件の他に、次の条件を満たしていることを確認してください:
- データベースのアーカイブ・モードは
ARCHIVELOG
に設定されています(デフォルト)。 - データベース・ホスト・ファイル・システムの
/u01
ディレクトリに、バックアップ・プロセスを実行するのに十分な空き領域があります。 - oracleユーザーの.bash_profileファイルに、対話型コマンド(
oraenv
や、エラーまたは警告メッセージを生成する可能性のあるコマンドなど)は含まれていません。 - (自動バックアップ用) sqlnet.oraファイルのデフォルトの
WALLET_LOCATION
エントリは変更されていません。 - 標準の
RMAN
コマンドを使用してRMAN
バックアップ設定が変更されていません。
これらのガイドラインに従わないことで発生する可能性のある問題の詳細は、ベア・メタルDBシステムおよび仮想マシンDBシステムでのバックアップの失敗を参照してください。
Oracle Cloud Infrastructure管理対象バックアップの機能
次の情報は、Oracle Cloud InfrastructureコンソールまたはAPIを使用して構成された管理対象バックアップに適用されます。
セキュリティ・ゾーン・コンパートメント内のデータベースで自動バックアップが有効になっている必要があります。データベース・サービス・リソースに影響するポリシーの完全なリストは、セキュリティ・ゾーン・ポリシーを参照してください。
自動増分バックアップとアーカイブREDOログ・バックアップ
データベースの自動バックアップ機能を有効にすると、サービスによって継続的に次のものが作成されます:
- 週次のレベル0バックアップ。通常は指定した週末に作成されます。レベル0バックアップは完全バックアップに相当します。コンソールでは、週次のレベル0バックアップは、日次のレベル1バックアップと同様に、バックアップ・タイプが「増分」のバックアップのリストに表示されます。
-
日次のレベル1バックアップ。これは、レベル0バックアップの日から6日間、毎日作成される増分バックアップです。
レベル0およびレベル1のバックアップはオブジェクト・ストアに格納され、OCIDが割り当てられます。
- 進行中のアーカイブREDOログのバックアップ(最小頻度は60分ごと)。Oracle Cloud Infrastructureコンソールのデータベース詳細ページの「最終バックアップ時間」フィールドに、最後のアーカイブREDOログの時間が表示されます。このバックアップは、レベル0およびレベル1の自動バックアップとは異なり、ログ・データに基づいており、OCIDが割り当てられません。最後のアーカイブREDOログのバックアップを使用して、新しいデータベースを作成したり、最小限のデータ損失でデータベースをリカバリすることができます。
レベル0およびレベル1のバックアップの作成に使用される自動バックアップ・プロセスは、日次バックアップ・ウィンドウ内(夜中の0時から午前6時まで)であればいつでも実行できます。バックアップ・ウィンドウのタイム・ゾーン情報については、バックアップ・スケジューリングに関する次のトピックを参照してください。自動増分バックアップ(レベル0およびレベル1)は、デフォルトでは30日間、オブジェクト・ストレージに保持されます。
バックアップ保持
自動バックアップを有効にするように選択した場合は、事前設定された保持期間(7日、15日、30日、45日または60日)のいずれかを選択できます。増分バックアップは、選択した保持期間の終わりに自動的に削除されます。
自動バックアップを使用したデータベースの監査ファイルおよびトレース・ファイルの保持
Oracle Databaseは、監査ファイルおよびトレース・ファイルをデータベースのローカル・ストレージの/u01
ディレクトリに書き込みます。これらのファイルはデフォルトで30日間保持されますが、この間隔は変更できます。1日に1回、30日(または、該当する場合はユーザーが指定した間隔)を経過した監査ファイルおよびトレース・ファイルは、Oracle Schedulerジョブによって破棄されます。これらのファイルを永続的に保持する場合は、スケジューラ・ジョブを無効にすることもできます。このスケジューラ・ジョブを変更するには、次のdbcli
コマンドを使用します。
-
保持期間をデフォルト設定の30日から変更するには:
dbcli update-database -in ;dbName> -lr ;number_of_days_to_retain_files>
例:
dbcli update-database -in inventorydb -lr 15
-
古い監査ファイルおよびトレース・ファイルを破棄する日次のスケジューラ・ジョブを無効にするには:
dbcli update-schedule -i ;schedulerID> -d
例:
dbcli update-schedule -i 5678 -d
バックアップ・スケジューリング
自動バックアップ・プロセスは、日次バックアップ・ウィンドウ内の任意の時間に開始されます。ユーザーは、データベースの自動バックアップ・プロセスが開始される2時間のスケジュール・ウィンドウを、オプションで指定できます。偶数時に開始される12のスケジューリング・ウィンドウから選択できます(たとえば、1つ目のウィンドウを午前4時から6時まで、その次のウィンドウを午前6時から8時までに指定できます)。スケジュール・ウィンドウ内にバックアップ・ジョブが完了するとはかぎりません
ウィンドウを指定しない場合は、DBシステムのリージョンのタイム・ゾーンのデフォルトのバックアップ・ウィンドウ(00:00から06:00まで)がデータベースに割り当てられます。デフォルトのバックアップ・スケジューリング・ウィンドウは6時間ですが、指定するウィンドウは2時間です。バックアップ・ウィンドウのタイム・ゾーン情報については、次のノートを参照してください。
- バックアップ・ウィンドウのタイム・ゾーン - 2018年11月20日、初めてすべてのデータベースにおいて有効になった自動バックアップはそれ以降、DBシステムが存在するリージョンのタイムゾーンで、夜中の0時から午前6時の間に実行されます。この日付より前にデータベースの自動バックアップを有効にしていた場合、データベースのバックアップ・ウィンドウは引き続きUTCの夜中の0時から午前6時までになります。選択したバックアップ・ウィンドウで自動バックアップが実行されるように、My Oracle Supportサービス・リクエストを作成できます。
- Data Guard - Data Guardアソシエーションでスタンバイ・ロールを担うデータベースの自動バックアップ機能を有効にできます。ただし、そのデータベースの自動バックアップは、そのデータベースがプライマリ・ロールを引き継ぐまでは作成されません。
- 保持期間の変更 - 将来、データベースの自動バックアップの保持期間を短くすると、更新された保持期間にない既存のバックアップはシステムによって削除されます。
- オブジェクト・ストレージのコスト - 自動バックアップによってオブジェクト・ストレージの使用コストが発生します。
オンデマンド完全バックアップ
データベースの完全バックアップは、そのデータベースがData Guardアソシエーションでスタンバイ・ロールを担っていないかぎり、いつでも作成できます。
スタンドアロン・バックアップ
DBシステムまたはデータベースを終了すると、そのすべてのリソースと自動バックアップが削除されます。完全バックアップは、スタンドアロン・バックアップとしてオブジェクト・ストレージに残ります。スタンドアロン・バックアップを使用して、新しいデータベースを作成できます。
- コンソールに表示されるバックアップのリストには、管理対象外のバックアップ(
RMAN
またはdbcli
を使用して直接作成されたバックアップ)は含まれません。 - すべてのバックアップは、Transparent Data Encryption (TDE)ウォレット暗号化に使用されるのと同じマスター・キーで暗号化されます。
現在のコンパートメントのスタンドアロン・バックアップのリストへの移動
- ナビゲーション・メニューを開きます。「Oracle Database」を選択し、「Oracleベース・データベース」をクリックします。
- 「リソース」で、「スタンドアロン・バックアップ」をクリックします。スタンドアロン・バックアップのリストが表示されます。
データベースの自動バックアップの構成
DBシステムを起動するときに、オプションで初期データベースの自動バックアップを有効にできます。この手順を使用して、データベースの作成後に自動バックアップを構成または無効化します。
- ナビゲーション・メニューを開きます。「Oracle Database」を選択し、「Oracleベース・データベース」をクリックします。
- コンパートメントを選択します。DBシステムのリストが表示されます。
- DBシステムのリストで、自動バックアップを構成するデータベースが含まれるDBシステムの名前をクリックします。
- DBシステムの詳細に続いてデータベースのリストが表示されます。
- データベースのリストで、自動バックアップを構成するデータベースの名前をクリックします。
- データベースの詳細が表示されます。
- 「データベース詳細」ページの「データベース情報」タブにある「バックアップ」の詳細に、自動バックアップが有効になっているかどうかが示されます。バックアップが有効になっている場合、詳細には、選択されたバックアップ保持期間も示されます。
- 自動バックアップを構成するには、「データベース詳細」ページで「自動バックアップの構成」をクリックします。
- 「自動バックアップの構成」ダイアログで、「自動バックアップの有効化」を必要に応じて選択または選択を解除します。
自動バックアップを有効にする場合は、次の構成を選択できます:
- バックアップ保持期間: 自動バックアップを有効にする場合は、事前設定された保持期間(7日、15日、30日、45日または60日)のいずれかを選択できます。デフォルトの選択は30日です。
- バックアップ・スケジューリング(UTC): 自動バックアップを有効にする場合は、2時間のスケジューリング・ウィンドウを選択してバックアップ操作の開始時間を制御できます。ウィンドウを指定しない場合、(DBシステム・リージョンのタイム・ゾーンの) 6時間のデフォルト・ウィンドウ(00:00から06:00まで)がデータベースに使用されます。
- 「変更の保存」をクリックします。
データベースのオンデマンド完全バックアップの作成
- ナビゲーション・メニューを開きます。「Oracle Database」を選択し、「Oracleベース・データベース」をクリックします。
- コンパートメントを選択します。DBシステムのリストが表示されます。
- DBシステムのリストで、オンデマンド完全バックアップを作成するデータベースが含まれるDBシステムの名前をクリックします。
- DBシステムの詳細に続いてデータベースのリストが表示されます。
- データベースのリストで、オンデマンド完全バックアップを作成するデータベースの名前をクリックします。
- データベースの詳細が表示されます。
- 「リソース」で、「バックアップ」をクリックします。バックアップのリストが表示されます。
- 「バックアップの作成」をクリックします。
- バックアップ・データベースの名前を指定します。
- 「バックアップの作成」をクリックします。
オブジェクト・ストレージからの完全バックアップの削除
自動バックアップを明示的に削除することはできません。データベースを終了しないかぎり、自動バックアップはオブジェクト・ストレージに30日間保持され、その後自動的に削除されます。
- ナビゲーション・メニューを開きます。「Oracle Database」を選択し、「Oracleベース・データベース」をクリックします。
- コンパートメントを選択します。DBシステムのリストが表示されます。
- DBシステムのリストで、バックアップを削除するデータベースが含まれるDBシステムの名前をクリックします。
- DBシステムの詳細に続いてデータベースのリストが表示されます。
- データベースのリストで、バックアップを削除するデータベースの名前をクリックします。
- データベースの詳細が表示されます。
- 「リソース」で、「バックアップ」をクリックします。バックアップのリストが表示されます。
- バックアップのリストで、削除するバックアップの「アクション」メニューをクリックします。
- 「削除」をクリックし、プロンプトが表示されたら確認します。
オブジェクト・ストレージからのスタンドアロン・バックアップの削除
- ナビゲーション・メニューを開きます。「Oracle Database」を選択し、「Oracleベース・データベース」をクリックします。
- 「リソース」で、「スタンドアロン・バックアップ」をクリックします。スタンドアロン・バックアップのリストが表示されます。
- スタンドアロン・バックアップのリストで、削除するバックアップの「アクション」メニューをクリックします。
- 「削除」をクリックし、プロンプトが表示されたら確認します。
APIの使用
APIの使用およびリクエストの署名の詳細は、REST APIおよびセキュリティ資格証明を参照してください。SDKについては、ソフトウェア開発キットとコマンドライン・インタフェースを参照してください。
データベース・バックアップを管理するには、次のAPI操作を使用します:
- ListBackups
- GetBackup
- CreateBackup
- DeleteBackup
- UpdateDatabase - 自動バックアップを有効および無効にします。
データベース・サービスのAPIの完全なリストは、データベース・サービスAPIを参照してください。