クラウド保護を使用したリカバリ・サービスへのオンプレミス・データベースの追加

クラウド保護フリート・エージェントは、保護されたデータベースを作成するために、オンプレミス・データベースをリカバリ・サービスに登録します。

SQLclでは、rcv add databaseコマンドによってデータベース・クライアントが自動的に検出され、指定されたOCIコンパートメントに追加されます。すべてのデータベースは、同じリカバリ・サービス・サブネットに登録されます。Oracle定義のブロンズ保護ポリシーは、デフォルトで割り当てられます。また、選択した保護ポリシーを指定することもできます。

各データベース・クライアントを個別のOCIコンパートメントに追加し、異なるリカバリ・サービス・サブネットおよび保護ポリシーを割り当てる場合は、rcv add databaseコマンドを-generate_config_onlyオプションとともに実行して、最初に構成(JSON)ファイルを生成する必要があります。構成ファイルを変更して、各データベースに必要なコンパートメントID、リカバリ・サービス・サブネットおよび保護ポリシーを指定します。次に、構成ファイルとともにrcv add databaseコマンドを再度実行します。Oracleでは、リカバリ・サービスにデータベースを追加するために、この自動化された方法に従うことをお薦めします。

ノート

クラウド保護では、Oracle定義のブロンズ保護ポリシーがすべてのデータベースのデフォルト・ポリシーとして割り当てられます。データベースを追加する前に、構成ファイルでデフォルト・ポリシーを変更できます。

手動アプローチでは、各データベース(SYSBACKUP権限あり)に接続してから、rcv add databaseコマンドを実行してデータベースを個別に追加します。

rcv add databaseコマンドを実行すると、Cloud Protect Fleet Agentは次のステップを内部で実行します。

  • リカバリ・サービスにデータベースを追加するための前提条件を確認します。
  • SYSBACKUPユーザーが存在しない場合は、SYSBACKUPユーザーおよびパスワードを作成します。
    ノート

    SYSBACKUPユーザーおよびパスワードは、クラウド保護フリート・エージェントがデータベースへの名前付き接続を確立するために必要です。次のコマンドを使用して、SYSBACKUPユーザーとしてデータベースに接続します。

    /opt/oracle/sqlcl/bin/sql -name <DB_UNIQUE_NAME>_rcv_conn

    DB_UNIQUE_NAMEは、データベースのグローバルに一意の名前です。

  • VPCユーザー・アカウントのランダム・パスワードを生成します。RMANリカバリ・カタログへのデータベース・アクセスを認証するには、VPCユーザー資格証明が必要です。
  • リカバリService APIを起動して、保護されたデータベース・リソースを作成します。
  • 保護されたデータベースが「アクティブ」ライフサイクル状態になるまで待機します。
  • RMANを使用したリカバリ・サービスのリカバリ・アプライアンスへのデータベースの登録
  • Cloud Protectで保護されたデータベースを構成します。
  • Cloud Protectはデータ保護を維持します。

次のステップを使用して、オンプレミス・データベースをリカバリ・サービスに追加します。

  1. Oracleソフトウェア所有者ユーザー(oracle)としてデータベースにログインします。
    SQLclのバージョンが26.2.0より低い場合は、SQLclでrcvコマンドを実行する前に、ORACLE_HOME環境変数を設定してください。

    この例では、ORACLE_HOME環境変数が、Oracleデータベース・クライアントがインストールされているディレクトリを指しています。

    echo $ORACLE_HOME
    /u01/app/oracle/product/19.0.0.0/dbhome_1
  2. SQLclをoracleユーザーとして起動します。
    Oracle RAC環境では、最初の計算ノードでのみSQLclを起動します。
    oracle@host$ /opt/oracle/sqlcl/bin/sql /nolog
    SQL>
  3. rcv add databaseコマンドを実行して、同じOCIコンパートメント、リカバリ・サービス・サブネットおよび保護ポリシーを使用して、検出されたすべてのデータベースを自動的に追加します。異なるリカバリ・サービス・サブネットおよび保護ポリシーを使用して各データベースを個別のコンパートメントに追加する場合は、このステップをスキップして、ステップ4に進みます。
    SQL> rcv add database -auto_discover 
    -compartment_id <COMPARTMENT_OCID> 
    -recovery_service_subnets <SUBNET_OCID>
    -protection_policy_id <PROTECTION_POLICY_OCID>
    • -compartment_id: すべてのデータベース・クライアントを追加するコンパートメントのOCID
    • -recovery_service_subnets: リカバリ・サービス内のすべての適格なデータベース・クライアントを保護されたデータベースとして登録するために使用する必要があるリカバリ・サービス・サブネットのOCID
    • (オプション) -protection_policy_id: リカバリ・サービスに登録されている保護されたデータベースに割り当てる必要がある保護ポリシーのOCID。ポリシーを指定しない場合、Oracle定義のブロンズ・ポリシーがデフォルトで割り当てられます。
  4. 次のステップを実行して、データベース・クライアントを自動的に検出し、各データベース・クライアントを個別のコンパートメントに追加します。各データベースに異なるリカバリ・サービス・サブネットおよび保護ポリシーを割り当てることもできます。
    1. rcv add databaseコマンドを-generate_config_onlyオプションとともに実行して、データベース・クライアントを自動的に検出し、構成ファイルを生成します。指定されたコンパートメントIDおよびリカバリ・サービス・サブネットIDは、構成ファイル内のデータベースごとに変更できます。
      SQL> rcv add database -auto_discover -generate_config_only 
      -compartment_id <COMPARTMENT_OCID> 
      -recovery_service_subnets <SUBNET_OCID>
      このサンプル出力では、rcv add databaseコマンドによって、保護されたデータベースの作成に必要なコンパートメントIDおよびリカバリ・サービスのサブネットID値を含むadd_database.json構成ファイルが生成されます。ブロンズ・ポリシーは、デフォルトの保護ポリシーとして割り当てられます。
      2025-08-15 09:22:16: Created config JSON /u01/app/oracle/rcv/add_database.json
      2025-08-15 09:22:16: You can onboard a database by running 'rcv add database -config /u01/app/oracle/rcv/add_database.json'
    2. (オプション)必要に応じて、構成ファイルを編集して、割り当てられた値を変更します。
      edit /u01/app/oracle/rcv/add_database.json
      add_database.json構成ファイルのサンプル・コンテンツ。
      
      [
          {
              "dbUniqueName": "DB1",
              "displayName": "DB1",
              "compartmentId": "ocid1.compartment.oc1..aaa...",
              "protectionPolicy": "ocid1.recoveryservicepolicy.region1..aaa...",
              "sbtLibrary": "/u01/app/oracle/product/19.24.0.0/dbhome_2/lib/libra.so",
              "oracleHome": "/u01/app/oracle/product/19.24.0.0/dbhome_2",
              "oracleSid": "DB1",
              "recoveryServiceSubnets": [
                  "ocid1.subnet.oc1.phx.aaa..."
              ]
          },
          {
              "dbUniqueName": "DB2",
              "displayName": "DB2",
              "compartmentId": "ocid1.compartment.oc1..aaaaaa...",
              "protectionPolicy": "ocid1.recoveryservicepolicy.region1..aaa...",
              "sbtLibrary": "/u01/app/oracle/product/19.27.0.0/dbhome_1/lib/libra.so",
              "oracleHome": "/u01/app/oracle/product/19.27.0.0/dbhome_1",
              "oracleSid": "DB2",
              "recoveryServiceSubnets": [
                  "ocid1.subnet.oc1.phx.aaa..."
              ]
          },
          {
              "dbUniqueName": "DB3",
              "displayName": "DB3",
              "compartmentId": "ocid1.compartment.oc1..aaa...",
              "protectionPolicy": "ocid1.recoveryservicepolicy.region1..aaa...",
              "sbtLibrary": "/u01/app/oracle/product/19.26.0.0/dbhome_3/lib/libra.so",
              "oracleHome": "/u01/app/oracle/product/19.26.0.0/dbhome_3",
              "oracleSid": "DB3",
              "recoveryServiceSubnets": [
                  "ocid1.subnet.oc1.phx.aaa..."
              ]
          }
      ]
      SQL>
    3. rcv add databaseコマンドを再度実行し、構成ファイルを指定します。
      SQL> rcv add database -config <configuration file location> 
      この例では、add_database.json構成ファイルのパスを指定します。
      SQL> rcv add database -config /u01/app/oracle/rcv/add_database.json 
  5. (推奨)「リアルタイム・データ保護」を有効にします。
    1. SQLclを使用して、SYSBACKUP権限を持つユーザーとしてデータベースにログインします。
      oracle@host$ /opt/oracle/sqlcl/bin/sql -name <DB_UNIQUE_NAME>_rcv_conn

      この例では、データベースc1db1に接続します。

      oracle@host$ /opt/oracle/sqlcl/bin/sql -name c1db1_rcv_conn
    2. rcv realtime_redoコマンドを実行します。
      SQL> rcv add realtime_redo
      データベースc1db1のサンプル出力を確認します。
      2025-08-15 10:33:48: Log file: /u01/app/oracle/rcv/dbs/c1db1/log/add_realtime_redo_c1db1.20250815.103348.log
      SQL>
    3. データベースを再起動して、変更を有効にします。