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

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

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

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

ノート

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

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

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

  • リカバリ・サービスにデータベースを追加するための前提条件を確認します。

  • SYSBACKUPユーザーが存在しない場合は、SYSBACKUPユーザーおよびパスワードを作成します。

ノート

ノート: Cloud Protect Fleet Agentがデータベースへの名前付き接続を確立するには、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. oracleユーザーとしてSQLclを起動します。

    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. データベースを再起動して、変更を有効にします。