Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

TR-5002: Azure NetApp Filesによる Oracle Active Data Guard のコスト削減

共同作成者 netapp-revathid kevin-hoke

このソリューションでは、Microsoft Azure NetApp Files (ANF) をプライマリおよびスタンバイ データベース ストレージとして使用して Oracle Data Guard を構成し、Azure クラウドでの Oracle Data Guard HA/DR ソリューションのライセンスおよび運用コストを削減するための概要と詳細を示します。

目的

Oracle Data Guard は、プライマリ データベースとスタンバイ データベースのレプリケーション構成におけるエンタープライズ データの高可用性、データ保護、および災害復旧を保証します。 Oracle Active Data Guard により、プライマリ データベースからスタンバイ データベースへのデータ レプリケーションがアクティブな状態でも、ユーザーはスタンバイ データベースにアクセスできるようになります。 Data Guard は、Oracle Database Enterprise Edition の機能です。別途ライセンスは必要ありません。一方、Active Data Guard は Oracle Database Enterprise Edition オプションであるため、別途ライセンスが必要です。 Active Data Guard セットアップでは、複数のスタンバイ データベースがプライマリ データベースからデータ レプリケーションを受信できます。ただし、追加のスタンバイ データベースごとに、Active Data Guard ライセンスと、プライマリ データベースのサイズと同じ追加のストレージが必要になります。運用コストはすぐに増加します。

Oracle データベース運用のコストを削減することに熱心で、Azure クラウドに Active Data Guard を設定する予定の場合は、代替案を検討する必要があります。 Active Data Guard の代わりに、Data Guard を使用して、プライマリ データベースからAzure NetApp Filesストレージ上の単一の物理スタンバイ データベースにレプリケートします。その後、このスタンバイ データベースの複数のコピーをクローン化し、読み取り/書き込みアクセス用に開いて、レポート、開発、テストなどの他の多くのユース ケースに対応できます。最終的な結果として、Active Data Guard ライセンスを排除しながら、Active Data Guard の機能を効果的に提供できます。このドキュメントでは、ANF ストレージ上の既存のプライマリ データベースとフィジカル スタンバイ データベースを使用して Oracle Data Guard を設定する方法を説明します。スタンバイ データベースは、 NetApp SnapCenterデータベース管理ツールを使用して、必要に応じてユース ケースの読み取り/書き込みアクセス用にバックアップおよびクローン作成されます。 NetAppソリューション エンジニアリング チームは、ユーザーの介入を必要とせずに、データベース クローンのライフサイクル管理を完全に自動化するために、ユーザーが定義したスケジュールでクローンを更新する自動化ツールキットも提供しています。

このソリューションは、次のユースケースに対応します。

  • Azure リージョン全体の Microsoft Azure NetApp Filesストレージ上のプライマリ データベースと物理スタンバイ データベース間の Oracle Data Guard の実装。

  • レポート、開発、テストなどのユースケースに対応するために、フィジカル スタンバイ データベースをバックアップしてクローンを作成します。

  • 自動化による Oracle データベース クローン更新ライフサイクル管理。

観客

このソリューションは次の人々を対象としています。

  • 高可用性、データ保護、および災害復旧のために Azure クラウドに Oracle Active Data Guard を設定する DBA。

  • Azure クラウドでの Oracle Active Data Guard 構成に関心のあるデータベース ソリューション アーキテクト。

  • Oracle Data Guard をサポートするAzure NetApp Filesストレージを管理するストレージ管理者。

  • Azure クラウド環境で Oracle Data Guard を立ち上げたいアプリケーション所有者。

ソリューションのテストおよび検証環境

このソリューションのテストと検証は、実際のユーザー展開環境と一致しない可能性のある Azure クラウド ラボ設定で実行されました。詳細については、セクションをご覧ください。 導入検討の重要な要素

アーキテクチャ

この画像は、ANF 上の Azure クラウドにおける Oracle Data Guard 実装の詳細を示しています。

ハードウェアおよびソフトウェアコンポーネント

ハードウェア

Azure NetApp Files

Microsoftが提供する現在のバージョン

2つの3 TiB容量プール、標準サービスレベル、自動QoS

DB サーバー用の Azure VM

標準 B4ms (4 vCPU、16 GiB メモリ)

3 つの DB VM (1 つはプライマリ DB サーバー、1 つはスタンバイ DB サーバー、3 つ目はクローン DB サーバー)

ソフトウェア

レッドハットリナックス

Red Hat Enterprise Linux 8.6 (LVM) - x64 Gen2

テスト用にRedHatサブスクリプションを導入

Oracle Database

バージョン19.18

RUパッチp34765931_190000_Linux-x86-64.zipを適用しました

Oracle OPatch

バージョン 12.2.0.1.36

最新パッチ p6880880_190000_Linux-x86-64.zip

SnapCenter

バージョン6.0.1

ビルド 6.0.1.4487

NFS

バージョン3.0

Oracle で dNFS が有効

仮想的なニューヨークからロサンゼルスへの DR セットアップによる Oracle Data Guard 構成

データベース

DB_UNIQUE_NAME

Oracleネットサービス名

プライマリ

NTAP_NY

NTAP_NY.internal.cloudapp.net

Standby

NTAP_LA

NTAP_LA.internal.cloudapp.net

導入検討の重要な要素

  • *スタンバイ データベース クローン。*プライマリ データベースからトランザクション ログを受け取って適用しながら、フィジカル スタンバイ データベースを複製して DB VM にマウントし、DEV、TEST、レポートなどの他のワークロードをサポートできます。クローンには薄いクローンと厚いクローンがあります。現時点では、ANF はスタンバイ データベースの完全なコピーであるシック クローンのみをサポートしています。 ANF シン クローン オプションはまもなくリリースされる予定です。データベース ボリュームのシン クローン コピーでは、スタンバイ データベースの同じ DB ボリュームを共有し、コピー オン ライト テクノロジーを利用して書き込み IO を処理します。したがって、クローンのストレージ効率は非常に高く、新しい書き込み IO に対して最小限かつ増分的な新しいストレージ割り当てで、他の多くのユースケースに使用できます。これにより、Active Data Guard のストレージ フットプリントが大幅に削減され、ストレージ コストが大幅に削減されます。 NetApp、Oracle のパフォーマンスを高いレベルで維持するために、データベースがプライマリ ストレージからスタンバイ ANF ストレージに切り替わる場合、 FlexCloneアクティビティを最小限に抑えることを推奨しています。

  • *Oracle ソフトウェア要件*通常、フィジカルスタンバイデータベースは、Oracle Data Guard Standby-First Patch Applyプロセスが進行中でない限り(My Oracle Supportノート1265700.1に記載されているように)、パッチセット例外(PSE)、クリティカルパッチアップデート(CPU)、パッチセットアップデート(PSU)を含め、プライマリデータベースと同じデータベースホームバージョンである必要があります。"サポート"

  • *スタンバイ データベースのディレクトリ構造に関する考慮事項*可能であれば、プライマリ システムとスタンバイ システムのデータ ファイル、ログ ファイル、および制御ファイルの名前とパス名を同じにし、Optimal Flexible Architecture (OFA) 命名規則を使用する必要があります。スタンバイ データベース上のアーカイブ ディレクトリも、サイズや構造を含め、サイト間で同一である必要があります。この戦略により、バックアップ、スイッチオーバー、フェイルオーバーなどの他の操作でも同じ手順を実行できるようになり、メンテナンスの複雑さが軽減されます。

  • *強制ログモード。*スタンバイ データベースに伝播できないプライマリ データベースでのログに記録されない直接書き込みを防ぐには、スタンバイ作成用のデータ ファイルのバックアップを実行する前に、プライマリ データベースで FORCE LOGGING をオンにします。

  • *Azure VM のサイズ設定*これらのテストと検証では、4 つの vCPU と 16 GiB のメモリを備えた Azure VM - Standard_B4ms を使用しました。実際のワークロード要件に基づいて、vCPU の数と RAM の量に応じて Azure DB VM のサイズを適切に設定する必要があります。

  • * Azure NetApp Files の構成。* Azure NetApp FilesはAzure NetAppストレージアカウントに次のように割り当てられます。 Capacity Pools 。これらのテストと検証では、East リージョンで Oracle プライマリをホストし、West 2 リージョンでスタンバイ データベースをホストするために 3 TiB の容量プールを展開しました。 ANF 容量プールには、Standard、Premium、Ultra の 3 つのサービス レベルがあります。  ANF 容量プールの IO 容量は、容量プールのサイズとサービス レベルによって決まります。本番環境での導入では、 NetAppOracle データベースのスループット要件を完全に評価し、それに応じてデータベース容量プールのサイズを設定することを推奨しています。容量プールの作成時に、QoS を自動または手動に設定し、保存時のデータの暗号化をシングルまたはダブルに設定できます。  

  • dNFS 構成。 dNFS を使用すると、ANF ストレージを備えた Azure 仮想マシン上で実行される Oracle データベースは、ネイティブ NFS クライアントよりも大幅に多くの I/O を実行できます。 NetApp自動化ツールキットを使用した自動化された Oracle デプロイメントでは、NFSv3 上に dNFS が自動的に構成されます。

ソリューションの展開

Oracle Data Guard をセットアップするための開始点として、プライマリ Oracle データベースが既に VNet 内の Azure クラウド環境にデプロイされているものと想定されます。理想的には、プライマリ データベースは、NFS マウントを使用して ANF ストレージにデプロイされます。 Oracle データベース ストレージ用に 3 つの NFS マウント ポイントが作成されます。Oracle バイナリ ファイル用のマウント /u01、Oracle データ ファイルと制御ファイル用のマウント /u02、Oracle の現在のログ ファイルとアーカイブ ログ ファイル、および冗長制御ファイル用のマウント /u03 です。

プライマリ Oracle データベースは、 NetApp ONTAPストレージ、または Azure エコシステム内またはプライベート データ センター内の任意の他のストレージで実行することもできます。次のセクションでは、ANF ストレージを備えた Azure のプライマリ Oracle DB と ANF ストレージを備えた Azure の物理スタンバイ Oracle DB の間に Oracle Data Guard を設定するための段階的な展開手順について説明します。

展開の前提条件

Details

展開には次の前提条件が必要です。

  1. Azure クラウド アカウントが設定され、必要な VNet とネットワーク サブネットが Azure アカウント内に作成されています。

  2. Azure クラウド ポータル コンソールから、少なくとも 3 台の Azure Linux VM をデプロイする必要があります。1 台はプライマリ Oracle DB サーバーとして、1 台はスタンバイ Oracle DB サーバーとして、もう 1 台はレポート、開発、テストなどのためのクローン ターゲット DB サーバーとしてデプロイします。環境設定の詳細については、前のセクションのアーキテクチャ図を参照してください。また、Microsoft"Azure 仮想マシン"詳細についてはこちらをご覧ください。

  3. プライマリ Oracle データベースは、プライマリ Oracle DB サーバーにインストールされ、構成されている必要があります。一方、スタンバイ Oracle DB サーバーまたはクローン Oracle DB サーバーには、Oracle ソフトウェアのみがインストールされ、Oracle データベースは作成されません。理想的には、Oracle ファイル ディレクトリのレイアウトは、すべての Oracle DB サーバー上で完全に一致している必要があります。 Azure クラウドおよび ANF での Oracle の自動展開に関するNetAppの推奨事項の詳細については、次の技術レポートを参照してください。

  4. Azure クラウド ポータル コンソールから、Oracle データベース ボリュームをホストするための 2 つの ANF ストレージ容量プールをデプロイします。真の DataGuard 構成を模倣するには、ANF ストレージ容量プールを異なるリージョンに配置する必要があります。 ANFストレージの展開に慣れていない場合は、ドキュメントを参照してください。"クイックスタート: Azure NetApp Filesをセットアップして NFS ボリュームを作成する"ステップバイステップの手順については、こちらをご覧ください。

    Azure 環境の構成を示すスクリーンショット。

  5. プライマリ Oracle データベースとスタンバイ Oracle データベースが 2 つの異なるリージョンに配置されている場合は、2 つの別々の VNet 間のデータ トラフィック フローを許可するように VPN ゲートウェイを構成する必要があります。 Azure での詳細なネットワーク構成については、このドキュメントの範囲外です。次のスクリーンショットは、VPN ゲートウェイがどのように構成され、接続され、ラボでデータ トラフィック フローがどのように確認されるかについての参考資料を提供します。

    ラボ VPN ゲートウェイ:Azure 環境の構成を示すスクリーンショット。

    プライマリ VNET ゲートウェイ:Azure 環境の構成を示すスクリーンショット。

    Vnet ゲートウェイの接続ステータス:Azure 環境の構成を示すスクリーンショット。

    トラフィック フローが確立されていることを確認します (3 つのドットをクリックしてページを開きます)。Azure 環境の構成を示すスクリーンショット。

Data Guard用のプライマリデータベースを準備する

Details

このデモでは、プライマリ Azure DB サーバー上に NTAP と呼ばれるプライマリ Oracle データベースを 3 つの NFS マウント ポイント (Oracle バイナリ用の /u01、Oracle データ ファイルと Oracle 制御ファイル用の /u02、Oracle アクティブ ログ、アーカイブ ログ ファイル、および冗長 Oracle 制御ファイル用の /u03) でセットアップしました。以下は、Oracle Data Guard 保護用のプライマリ データベースを設定するための詳細な手順を示しています。すべての手順は、Oracleデータベース所有者またはデフォルトのユーザーとして実行する必要があります。 `oracle`ユーザー。

  1. プライマリ Azure DB サーバー orap.internal.cloudapp.net 上のプライマリ データベース NTAP は、最初は ANF をデータベース ストレージとして使用するスタンドアロン データベースとしてデプロイされます。

    orap.internal.cloudapp.net:
    resource group: ANFAVSRG
    Location: East US
    size: Standard B4ms (4 vcpus, 16 GiB memory)
    OS: Linux (redhat 8.6)
    pub_ip: 172.190.207.231
    pri_ip: 10.0.0.4
    
    [oracle@orap ~]$ df -h
    Filesystem                 Size  Used Avail Use% Mounted on
    devtmpfs                   7.7G  4.0K  7.7G   1% /dev
    tmpfs                      7.8G     0  7.8G   0% /dev/shm
    tmpfs                      7.8G  209M  7.5G   3% /run
    tmpfs                      7.8G     0  7.8G   0% /sys/fs/cgroup
    /dev/mapper/rootvg-rootlv   22G  413M   22G   2% /
    /dev/mapper/rootvg-usrlv    10G  2.1G  8.0G  21% /usr
    /dev/sda1                  496M  181M  315M  37% /boot
    /dev/mapper/rootvg-homelv  2.0G   47M  2.0G   3% /home
    /dev/sda15                 495M  5.8M  489M   2% /boot/efi
    /dev/mapper/rootvg-varlv   8.0G  1.1G  7.0G  13% /var
    /dev/mapper/rootvg-tmplv    12G  120M   12G   1% /tmp
    /dev/sdb1                   32G   49M   30G   1% /mnt
    10.0.2.36:/orap-u02        500G  7.7G  493G   2% /u02
    10.0.2.36:/orap-u03        450G  6.1G  444G   2% /u03
    10.0.2.36:/orap-u01        100G  9.9G   91G  10% /u01
    
    [oracle@orap ~]$ cat /etc/oratab
    #
    
    
    
    # This file is used by ORACLE utilities.  It is created by root.sh
    # and updated by either Database Configuration Assistant while creating
    # a database or ASM Configuration Assistant while creating ASM instance.
    
    # A colon, ':', is used as the field terminator.  A new line terminates
    # the entry.  Lines beginning with a pound sign, '#', are comments.
    #
    # Entries are of the form:
    #   $ORACLE_SID:$ORACLE_HOME:<N|Y>:
    #
    # The first and second fields are the system identifier and home
    # directory of the database respectively.  The third field indicates
    # to the dbstart utility that the database should , "Y", or should not,
    # "N", be brought up at system boot time.
    #
    # Multiple entries with the same $ORACLE_SID are not allowed.
    #
    #
    NTAP:/u01/app/oracle/product/19.0.0/NTAP:N
  2. Oracle ユーザーとしてプライマリ DB サーバーにログインします。 sqlplus 経由でデータベースにログインし、プライマリで強制ログを有効にします。

    alter database force logging;
    [oracle@orap admin]$ sqlplus / as sysdba
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Tue Nov 26 20:12:02 2024
    Version 19.18.0.0.0
    
    Copyright (c) 1982, 2022, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.18.0.0.0
    
    SQL> alter database force logging;
    
    Database altered.
  3. sqlplus から、プライマリ DB でフラッシュバックを有効にします。フラッシュバックを使用すると、フェイルオーバー後にプライマリ データベースをスタンバイとして簡単に復元できます。

    alter database flashback on;
    SQL> alter database flashback on;
    
    Database altered.
  4. Oracle パスワード ファイルを使用して REDO トランスポート認証を構成します。プライマリで pwd ファイルが設定されていない場合は orapwd ユーティリティを使用して pwd ファイルを作成し、スタンバイ データベースの $ORACLE_HOME/dbs ディレクトリにコピーします。

  5. 現在のオンライン ログ ファイルと同じサイズのスタンバイ REDO ログをプライマリ DB に作成します。ログ グループは、オンライン ログ ファイル グループより 1 つ多くなります。フェイルオーバーが発生し、REDO データの受信を開始すると、プライマリ データベースはすぐにスタンバイ ロールに移行できます。次のコマンドを 4 回繰り返して、4 つのスタンバイ ログ ファイルを作成します。

    alter database add standby logfile thread 1 size 200M;
    SQL> alter database add standby logfile thread 1 size 200M;
    
    Database altered.
    
    SQL> /
    
    Database altered.
    
    SQL> /
    
    Database altered.
    
    SQL> /
    
    Database altered.
    
    
    SQL> set lin 200
    SQL> col member for a80
    SQL> select group#, type, member from v$logfile;
    
        GROUP# TYPE    MEMBER
    ---------- ------- --------------------------------------------------------------------------------
             3 ONLINE  /u03/orareco/NTAP/onlinelog/redo03.log
             2 ONLINE  /u03/orareco/NTAP/onlinelog/redo02.log
             1 ONLINE  /u03/orareco/NTAP/onlinelog/redo01.log
             4 STANDBY /u03/orareco/NTAP/onlinelog/o1_mf_4__2m115vkv_.log
             5 STANDBY /u03/orareco/NTAP/onlinelog/o1_mf_5__2m3c5cyd_.log
             6 STANDBY /u03/orareco/NTAP/onlinelog/o1_mf_6__2m4d7dhh_.log
             7 STANDBY /u03/orareco/NTAP/onlinelog/o1_mf_7__2m5ct7g1_.log
  6. sqlplus から、編集用に spfile から pfile を作成します。

    create pfile='/home/oracle/initNTAP.ora' from spfile;
  7. pfile を修正し、次のパラメータを追加します。

    vi /home/oracle/initNTAP.ora
    Update the following parameters if not set:
    
    DB_NAME=NTAP
    DB_UNIQUE_NAME=NTAP_NY
    LOG_ARCHIVE_CONFIG='DG_CONFIG=(NTAP_NY,NTAP_LA)'
    LOG_ARCHIVE_DEST_1='LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=NTAP_NY'
    LOG_ARCHIVE_DEST_2='SERVICE=NTAP_LA ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=NTAP_LA'
    REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE
    FAL_SERVER=NTAP_LA
    STANDBY_FILE_MANAGEMENT=AUTO
  8. sqlplus から、修正された pfile から spfile を再作成し、$ORACLE_HOME/dbs ディレクトリ内の既存の spfile を上書きします。

    create spfile='$ORACLE_HOME/dbs/spfileNTAP.ora' from pfile='/home/oracle/initNTAP.ora';
  9. $ORACLE_HOME/network/admin ディレクトリの Oracle tnsnames.ora を変更して、名前解決用の db_unique_name を追加します。

    vi $ORACLE_HOME/network/admin/tnsnames.ora
    # tnsnames.ora Network Configuration File: /u01/app/oracle/product/19.0.0/NTAP/network/admin/tnsnames.ora
    # Generated by Oracle configuration tools.
    
    NTAP_NY =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = orap.internal.cloudapp.net)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SID = NTAP)
        )
      )
    
    NTAP_LA =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = oras.internal.cloudapp.net)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SID = NTAP)
        )
      )
    
    LISTENER_NTAP =
      (ADDRESS = (PROTOCOL = TCP)(HOST = orap.internal.cloudapp.net)(PORT = 1521))
    メモ Azure DB サーバーにデフォルトとは異なる名前を付ける場合は、ホスト名解決のためにローカル ホスト ファイルに名前を追加します。
  10. プライマリ データベースのデータ ガード サービス名 NTAP_NY_DGMGRL.internal.cloudapp.net を listener.ora ファイルに追加します。

    vi $ORACLE_HOME/network/admin/listener.ora
    # listener.ora Network Configuration File: /u01/app/oracle/product/19.0.0/NTAP/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    
    LISTENER.NTAP =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = orap.internal.cloudapp.net)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
        )
      )
    
    SID_LIST_LISTENER.NTAP =
      (SID_LIST =
        (SID_DESC =
          (GLOBAL_DBNAME = NTAP_NY_DGMGRL.internal.cloudapp.net)
          (ORACLE_HOME = /u01/app/oracle/product/19.0.0/NTAP)
          (SID_NAME = NTAP)
        )
      )
  11. sqlplus を使用してデータベースをシャットダウンして再起動し、データ ガード パラメータがアクティブになっていることを確認します。

    shutdown immediate;
    startup;
    SQL> show parameter name
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    cdb_cluster_name                     string
    cell_offloadgroup_name               string
    db_file_name_convert                 string
    db_name                              string      NTAP
    db_unique_name                       string      NTAP_NY
    global_names                         boolean     FALSE
    instance_name                        string      NTAP
    lock_name_space                      string
    log_file_name_convert                string
    pdb_file_name_convert                string
    processor_group_name                 string
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    service_names                        string      NTAP_NY.internal.cloudapp.net
    SQL> sho parameter log_archive_dest
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    log_archive_dest                     string
    log_archive_dest_1                   string      LOCATION=USE_DB_RECOVERY_FILE_
                                                     DEST VALID_FOR=(ALL_LOGFILES,A
                                                     LL_ROLES) DB_UNIQUE_NAME=NTAP_
                                                     NY
    log_archive_dest_10                  string
    log_archive_dest_11                  string
    log_archive_dest_12                  string
    log_archive_dest_13                  string
    log_archive_dest_14                  string
    log_archive_dest_15                  string
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    log_archive_dest_16                  string
    log_archive_dest_17                  string
    log_archive_dest_18                  string
    log_archive_dest_19                  string
    log_archive_dest_2                   string      SERVICE=NTAP_LA ASYNC VALID_FO
                                                     R=(ONLINE_LOGFILES,PRIMARY_ROL
                                                     E) DB_UNIQUE_NAME=NTAP_LA
    log_archive_dest_20                  string
    log_archive_dest_21                  string
    .
    .

これで、Data Guard のプライマリ データベースのセットアップが完了します。

スタンバイデータベースを準備し、Data Guardをアクティブ化する

Details

Oracle Data Guard では、プライマリ DB サーバーと一致させるために、スタンバイ DB サーバー上の OS カーネル構成とパッチ セットを含む Oracle ソフトウェア スタックが必要です。管理を容易にし、簡素化するために、スタンバイ DB サーバーのデータベース ストレージ構成 (データベース ディレクトリのレイアウトや NFS マウント ポイントのサイズなど) は、プライマリ DB サーバーと一致させることが理想的です。スタンバイ Oracle DB サーバーを設定し、HA/DR 保護のために Oracle DataGuard をアクティブ化する詳細な手順を次に示します。すべてのコマンドはデフォルトのOracle所有者ユーザーIDとして実行する必要があります oracle

  1. まず、プライマリ Oracle DB サーバー上のプライマリ データベースの構成を確認します。このデモでは、ANF ストレージ上の 3 つの NFS マウントを使用して、プライマリ DB サーバーに NTAP と呼ばれるプライマリ Oracle データベースをセットアップしました。

  2. NetAppのドキュメントTR-4987に従ってOracleスタンバイDBサーバーをセットアップする場合"TR-4987: NFS を使用したAzure NetApp Filesへの簡素化された自動 Oracle デプロイメント"タグを使用する `-t software_only_install`ステップ2の `Playbook execution`自動 Oracle インストールを実行します。修正されたコマンド構文を以下に示します。このタグにより、Oracle ソフトウェア スタックのインストールと構成は可能になりますが、データベースの作成はできません。

    ansible-playbook -i hosts 4-oracle_config.yml -u azureuser -e @vars/vars.yml -t software_only_install
  3. デモ ラボのスタンバイ サイトのスタンバイ Oracle DB サーバー構成。

    oras.internal.cloudapp.net:
    resource group: ANFAVSRG
    Location: West US 2
    size: Standard B4ms (4 vcpus, 16 GiB memory)
    OS: Linux (redhat 8.6)
    pub_ip: 172.179.119.75
    pri_ip: 10.0.1.4
    
    [oracle@oras ~]$ df -h
    Filesystem                 Size  Used Avail Use% Mounted on
    devtmpfs                   7.7G     0  7.7G   0% /dev
    tmpfs                      7.8G     0  7.8G   0% /dev/shm
    tmpfs                      7.8G  265M  7.5G   4% /run
    tmpfs                      7.8G     0  7.8G   0% /sys/fs/cgroup
    /dev/mapper/rootvg-rootlv   22G  413M   22G   2% /
    /dev/mapper/rootvg-usrlv    10G  2.1G  8.0G  21% /usr
    /dev/sda1                  496M  181M  315M  37% /boot
    /dev/mapper/rootvg-varlv   8.0G  985M  7.1G  13% /var
    /dev/mapper/rootvg-homelv  2.0G   52M  2.0G   3% /home
    /dev/mapper/rootvg-tmplv    12G  120M   12G   1% /tmp
    /dev/sda15                 495M  5.8M  489M   2% /boot/efi
    /dev/sdb1                   32G   49M   30G   1% /mnt
    10.0.3.36:/oras-u01        100G  9.5G   91G  10% /u01
    10.0.3.36:/oras-u02        500G  8.1G  492G   2% /u02
    10.0.3.36:/oras-u03        450G  4.8G  446G   2% /u03
  4. Oracle ソフトウェアをインストールして構成したら、Oracle ホームとパスを設定します。また、スタンバイ $ORACLE_HOME dbs ディレクトリから、プライマリ データベースから Oracle パスワードをコピーします (まだコピーしていない場合)。

    export ORACLE_HOME=/u01/app/oracle/product/19.0.0/NTAP
    export PATH=$PATH:$ORACLE_HOME/bin
    scp oracle@10.0.0.4:$ORACLE_HOME/dbs/orapwNTAP .
  5. 次のエントリで tnsnames.ora ファイルを更新します。

    vi $ORACLE_HOME/network/admin/tnsnames.ora
    # tnsnames.ora Network Configuration File: /u01/app/oracle/product/19.0.0/NTAP/network/admin/tnsnames.ora
    # Generated by Oracle configuration tools.
    
    NTAP_NY =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = orap.internal.cloudapp.net)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SID = NTAP)
        )
      )
    
    NTAP_LA =
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = oras.internal.cloudapp.net)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SID = NTAP)
        )
      )
  6. DB データ ガード サービス名を listener.ora ファイルに追加します。

    vi $ORACLE_HOME/network/admin/listener.ora
    # listener.ora Network Configuration File: /u01/app/oracle/product/19.0.0/NTAP/network/admin/listener.ora
    # Generated by Oracle configuration tools.
    
    LISTENER.NTAP =
      (DESCRIPTION_LIST =
        (DESCRIPTION =
          (ADDRESS = (PROTOCOL = TCP)(HOST = oras.internal.cloudapp.net)(PORT = 1521))
          (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
        )
      )
    
    SID_LIST_LISTENER =
      (SID_LIST =
        (SID_DESC =
          (SID_NAME = NTAP)
        )
      )
    
    SID_LIST_LISTENER.NTAP =
      (SID_LIST =
        (SID_DESC =
          (GLOBAL_DBNAME = NTAP_LA_DGMGRL.internal.cloudapp.net)
          (ORACLE_HOME = /u01/app/oracle/product/19.0.0/NTAP)
          (SID_NAME = NTAP)
        )
      )
    
    LISTENER =
      (ADDRESS_LIST =
        (ADDRESS = (PROTOCOL = TCP)(HOST = oras.internal.cloudapp.net)(PORT = 1521))
      )
  7. dbca を起動して、プライマリ データベース NTAP からスタンバイ データベースをインスタンス化します。

    dbca -silent -createDuplicateDB -gdbName NTAP -primaryDBConnectionString orap.internal.cloudapp.net:1521/NTAP_NY.internal.cloudapp.net -sid NTAP -initParams fal_server=NTAP_NY -createAsStandby -dbUniqueName NTAP_LA
    [oracle@oras admin]$ dbca -silent -createDuplicateDB -gdbName NTAP -primaryDBConnectionString orap.internal.cloudapp.net:1521/NTAP_NY.internal.cloudapp.net -sid NTAP -initParams fal_server=NTAP_NY -createAsStandby -dbUniqueName NTAP_LA
    Enter SYS user password:
    
    Prepare for db operation
    22% complete
    Listener config step
    44% complete
    Auxiliary instance creation
    67% complete
    RMAN duplicate
    89% complete
    Post duplicate database operations
    100% complete
    
    Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/NTAP_LA/NTAP_LA.log" for further details.
  8. 複製されたスタンバイ データベースを検証します。新しく複製されたスタンバイ データベースは、最初は READ ONLY モードで開かれます。

    [oracle@oras admin]$ cat /etc/oratab
    #
    
    
    
    # This file is used by ORACLE utilities.  It is created by root.sh
    # and updated by either Database Configuration Assistant while creating
    # a database or ASM Configuration Assistant while creating ASM instance.
    
    # A colon, ':', is used as the field terminator.  A new line terminates
    # the entry.  Lines beginning with a pound sign, '#', are comments.
    #
    # Entries are of the form:
    #   $ORACLE_SID:$ORACLE_HOME:<N|Y>:
    #
    # The first and second fields are the system identifier and home
    # directory of the database respectively.  The third field indicates
    # to the dbstart utility that the database should , "Y", or should not,
    # "N", be brought up at system boot time.
    #
    # Multiple entries with the same $ORACLE_SID are not allowed.
    #
    #
    NTAP:/u01/app/oracle/product/19.0.0/NTAP:N
    [oracle@oras admin]$ export ORACLE_SID=NTAP
    [oracle@oras admin]$ sqlplus / as sysdba
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Tue Nov 26 23:04:07 2024
    Version 19.18.0.0.0
    
    Copyright (c) 1982, 2022, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.18.0.0.0
    
    SQL> select name, open_mode from v$database;
    
    NAME      OPEN_MODE
    --------- --------------------
    NTAP      READ ONLY
    
    SQL> show parameter name
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    cdb_cluster_name                     string
    cell_offloadgroup_name               string
    db_file_name_convert                 string
    db_name                              string      NTAP
    db_unique_name                       string      NTAP_LA
    global_names                         boolean     FALSE
    instance_name                        string      NTAP
    lock_name_space                      string
    log_file_name_convert                string
    pdb_file_name_convert                string
    processor_group_name                 string
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    service_names                        string      NTAP_LA.internal.cloudapp.net
    SQL> show parameter log_archive_config
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    log_archive_config                   string      DG_CONFIG=(NTAP_NY,NTAP_LA)
    SQL> show parameter fal_server
    
    NAME                                 TYPE        VALUE
    ------------------------------------ ----------- ------------------------------
    fal_server                           string      NTAP_NY
    SQL> select name from v$datafile;
    
    NAME
    --------------------------------------------------------------------------------
    /u02/oradata/NTAP/system01.dbf
    /u02/oradata/NTAP/sysaux01.dbf
    /u02/oradata/NTAP/undotbs01.dbf
    /u02/oradata/NTAP/pdbseed/system01.dbf
    /u02/oradata/NTAP/pdbseed/sysaux01.dbf
    /u02/oradata/NTAP/users01.dbf
    /u02/oradata/NTAP/pdbseed/undotbs01.dbf
    /u02/oradata/NTAP/NTAP_pdb1/system01.dbf
    /u02/oradata/NTAP/NTAP_pdb1/sysaux01.dbf
    /u02/oradata/NTAP/NTAP_pdb1/undotbs01.dbf
    /u02/oradata/NTAP/NTAP_pdb1/users01.dbf
    
    NAME
    --------------------------------------------------------------------------------
    /u02/oradata/NTAP/NTAP_pdb2/system01.dbf
    /u02/oradata/NTAP/NTAP_pdb2/sysaux01.dbf
    /u02/oradata/NTAP/NTAP_pdb2/undotbs01.dbf
    /u02/oradata/NTAP/NTAP_pdb2/users01.dbf
    /u02/oradata/NTAP/NTAP_pdb3/system01.dbf
    /u02/oradata/NTAP/NTAP_pdb3/sysaux01.dbf
    /u02/oradata/NTAP/NTAP_pdb3/undotbs01.dbf
    /u02/oradata/NTAP/NTAP_pdb3/users01.dbf
    
    19 rows selected.
    
    SQL> select name from v$controlfile;
    
    NAME
    --------------------------------------------------------------------------------
    /u02/oradata/NTAP/control01.ctl
    /u03/orareco/NTAP_LA/control02.ctl
    
    SQL> col member form a80
    SQL> select group#, type, member from v$logfile order by 2, 1;
    
        GROUP# TYPE    MEMBER
    ---------- ------- --------------------------------------------------------------------------------
             1 ONLINE  /u03/orareco/NTAP_LA/onlinelog/o1_mf_1_mndl6mxh_.log
             2 ONLINE  /u03/orareco/NTAP_LA/onlinelog/o1_mf_2_mndl7jdb_.log
             3 ONLINE  /u03/orareco/NTAP_LA/onlinelog/o1_mf_3_mndl8f03_.log
             4 STANDBY /u03/orareco/NTAP_LA/onlinelog/o1_mf_4_mndl99m7_.log
             5 STANDBY /u03/orareco/NTAP_LA/onlinelog/o1_mf_5_mndlb67d_.log
             6 STANDBY /u03/orareco/NTAP_LA/onlinelog/o1_mf_6_mndlc2tw_.log
             7 STANDBY /u03/orareco/NTAP_LA/onlinelog/o1_mf_7_mndlczhb_.log
    
    7 rows selected.
  9. スタンバイデータベースを再起動します `mount`ステージングし、次のコマンドを実行して、スタンバイ データベースの管理リカバリをアクティブ化します。

    alter database recover managed standby database disconnect from session;
    SQL> shutdown immediate;
    Database closed.
    Database dismounted.
    ORACLE instance shut down.
    SQL> startup mount;
    ORACLE instance started.
    
    Total System Global Area 6442449688 bytes
    Fixed Size                  9177880 bytes
    Variable Size            1090519040 bytes
    Database Buffers         5335154688 bytes
    Redo Buffers                7598080 bytes
    Database mounted.
    SQL> alter database recover managed standby database disconnect from session;
    
    Database altered.
  10. スタンバイ データベースのリカバリ ステータスを検証します。注意してください `recovery logmerger`で `APPLYING_LOG`アクション。

    SELECT ROLE, THREAD#, SEQUENCE#, ACTION FROM V$DATAGUARD_PROCESS;
SQL> SELECT ROLE, THREAD#, SEQUENCE#, ACTION FROM V$DATAGUARD_PROCESS;

ROLE                        THREAD#  SEQUENCE# ACTION
------------------------ ---------- ---------- ------------
post role transition              0          0 IDLE
recovery apply slave              0          0 IDLE
recovery apply slave              0          0 IDLE
recovery apply slave              0          0 IDLE
recovery apply slave              0          0 IDLE
recovery logmerger                1         18 APPLYING_LOG
managed recovery                  0          0 IDLE
RFS async                         1         18 IDLE
RFS ping                          1         18 IDLE
archive redo                      0          0 IDLE
redo transport timer              0          0 IDLE

ROLE                        THREAD#  SEQUENCE# ACTION
------------------------ ---------- ---------- ------------
gap manager                       0          0 IDLE
archive redo                      0          0 IDLE
archive redo                      0          0 IDLE
redo transport monitor            0          0 IDLE
log writer                        0          0 IDLE
archive local                     0          0 IDLE

17 rows selected.

SQL>

これにより、管理されたスタンバイ リカバリが有効になっているプライマリからスタンバイへの NTAP の Data Guard 保護のセットアップが完了します。

Data Guard Brokerのセットアップ

Details

Oracle Data Guard Broker は、Oracle Data Guard 構成の作成、保守、監視を自動化および一元化する分散管理フレームワークです。次のセクションでは、Data Guard 環境を管理するために Data Guard Broker を設定する方法を説明します。

  1. sqlplus 経由で次のコマンドを使用して、プライマリ データベースとスタンバイ データベースの両方でデータ ガード ブローカーを起動します。

    alter system set dg_broker_start=true scope=both;
  2. プライマリ データベースから、SYSDBA として Data Guard Borker に接続します。

    [oracle@orap ~]$ dgmgrl sys@NTAP_NY
    DGMGRL for Linux: Release 19.0.0.0.0 - Production on Wed Dec 11 20:53:20 2024
    Version 19.18.0.0.0
    
    Copyright (c) 1982, 2019, Oracle and/or its affiliates.  All rights reserved.
    
    Welcome to DGMGRL, type "help" for information.
    Password:
    Connected to "NTAP_NY"
    Connected as SYSDBA.
    DGMGRL>
  3. Data Guard Broker 構成を作成して有効にします。

    DGMGRL> create configuration dg_config as primary database is NTAP_NY connect identifier is NTAP_NY;
    Configuration "dg_config" created with primary database "ntap_ny"
    DGMGRL> add database NTAP_LA as connect identifier is NTAP_LA;
    Database "ntap_la" added
    DGMGRL> enable configuration;
    Enabled.
    DGMGRL> show configuration;
    
    Configuration - dg_config
    
      Protection Mode: MaxPerformance
      Members:
      ntap_ny - Primary database
        ntap_la - Physical standby database
    
    Fast-Start Failover:  Disabled
    
    Configuration Status:
    SUCCESS   (status updated 3 seconds ago)
  4. Data Guard Broker 管理フレームワーク内でデータベースのステータスを検証します。

    DGMGRL> show database db1_ny;
    
    Database - db1_ny
    
      Role:               PRIMARY
      Intended State:     TRANSPORT-ON
      Instance(s):
        db1
    
    Database Status:
    SUCCESS
    
    DGMGRL> show database db1_la;
    
    Database - db1_la
    
      Role:               PHYSICAL STANDBY
      Intended State:     APPLY-ON
      Transport Lag:      0 seconds (computed 1 second ago)
      Apply Lag:          0 seconds (computed 1 second ago)
      Average Apply Rate: 2.00 KByte/s
      Real Time Query:    OFF
      Instance(s):
        db1
    
    Database Status:
    SUCCESS
    
    DGMGRL>

障害が発生した場合、Data Guard Broker を使用してプライマリ データベースをスタンバイに瞬時にフェイルオーバーできます。もし `Fast-Start Failover`有効になっている場合、Data Guard Broker は、障害が検出されると、ユーザーの介入なしにプライマリ データベースをスタンバイにフェイルオーバーできます。

他のユースケース用にスタンバイ データベースをクローンする

Details

Oracle Data Guard セットアップで Oracle スタンバイ データベースを ANF 上にホストする主な利点は、シン クローンが有効になっている場合、最小限の追加ストレージ投資で、他の多くのユース ケースに対応するためにすぐにクローンを作成できることです。 NetApp、Oracle DataGuard データベースを管理するためにSnapCenter UI ツールを使用することを推奨しています。次のセクションでは、 NetApp SnapCenterツールを使用して、DEV、TEST、REPORT などの他の目的で、ANF にマウントされリカバリ中のスタンバイ データベース ボリュームのスナップショットを作成し、クローンを作成する方法を説明します。

以下は、 SnapCenterを使用して Oracle Data Guard 内の管理対象フィジカル スタンバイ データベースから READ/WRITE データベースを複製するための高レベルの手順です。 ANF上でのSnapCenter for Oracleのセットアップと構成方法の詳細については、TR-4988を参照してください。"SnapCenterを使用した ANF 上の Oracle データベースのバックアップ、リカバリ、およびクローン"詳細については。

  1. ユースケースの検証は、テスト テーブルを作成し、プライマリ データベースのテスト テーブルに行を挿入することから開始します。次に、トランザクションがスタンバイまで通過し、最終的にクローンまで到達することを検証します。

    [oracle@orap ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Wed Dec 11 16:33:17 2024
    Version 19.18.0.0.0
    
    Copyright (c) 1982, 2022, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.18.0.0.0
    
    SQL> alter session set container=ntap_pdb1;
    
    Session altered.
    
    SQL> create table test(id integer, dt timestamp, event varchar(100));
    
    Table created.
    
    SQL> insert into test values(1, sysdate, 'a test transaction at primary database NTAP on DB server orap.internal.cloudapp.net');
    
    1 row created.
    
    SQL> commit;
    
    Commit complete.
    
    SQL> select * from test;
    
            ID
    ----------
    DT
    ---------------------------------------------------------------------------
    EVENT
    --------------------------------------------------------------------------------
             1
    11-DEC-24 04.38.44.000000 PM
    a test transaction at primary database NTAP on DB server orap.internal.cloudapp.
    net
    
    
    SQL> select instance_name, host_name from v$instance;
    
    INSTANCE_NAME
    ----------------
    HOST_NAME
    ----------------------------------------------------------------
    NTAP
    orap
    
    
    SQL>
  2. SnapCenter構成では、Unixユーザー(デモの場合はazureuser)とAzure資格情報(デモの場合はazure_anf)が追加されました。 Credential`で `Settings

    GUI でこの手順を示すスクリーンショット。

  3. azure_anf認証情報を使用してANFストレージを追加します Storage Systems。 Azure サブスクリプションに複数の ANF ストレージ アカウントがある場合は、ドロップダウン リストをクリックして適切なストレージ アカウントを選択してください。このデモ用に 2 つの専用の Oracle ストレージ アカウントを作成しました。

    GUI でこの手順を示すスクリーンショット。

  4. すべてのOracle DBサーバーがSnapCenterに追加されました Hosts

    GUI でこの手順を示すスクリーンショット。

    メモ クローン DB サーバーには、同一の Oracle ソフトウェア スタックがインストールおよび構成されている必要があります。私たちのテストケースでは、Oracle 19C ソフトウェアはインストールおよび構成されていますが、データベースは作成されていません。
  5. オフライン/マウントの完全データベース バックアップに合わせてカスタマイズされたバックアップ ポリシーを作成します。

    GUI でこの手順を示すスクリーンショット。

  6. スタンバイデータベースを保護するためにバックアップポリシーを適用する Resources`タブ。最初に検出された場合、データベースのステータスは次のように表示されます。 `Not protected

    GUI でこの手順を示すスクリーンショット。

  7. バックアップを手動でトリガーするか、バックアップ ポリシーの適用後に設定された時間にスケジュールに従ってバックアップを実行するかを選択できます。

    GUI でこの手順を示すスクリーンショット。

  8. バックアップ後、データベース名をクリックしてデータベース バックアップ ページを開きます。データベースクローンに使用するバックアップを選択し、クリックします。 `Clone`クローンワークフローを起動するボタン。

    GUI でこの手順を示すスクリーンショット。

  9. 選択してください `Complete Database Clone`クローンインスタンスの SID に名前を付けます。

    GUI でこの手順を示すスクリーンショット。

  10. スタンバイ DB からクローンされたデータベースをホストするクローン DB サーバーを選択します。データ ファイル、REDO ログについてはデフォルトを受け入れます。制御ファイルを /u03 マウント ポイントに置きます。

    GUI でこの手順を示すスクリーンショット。

  11. OS ベースの認証にはデータベース資格情報は必要ありません。 Oracle ホームの設定を、クローン DB サーバーで構成されているものと一致させます。

    GUI でこの手順を示すスクリーンショット。

  12. 必要に応じて、クローン DB の PGA または SGA サイズを小さくするなど、クローン データベース パラメータを変更します。クローン前に実行するスクリプトがあれば指定します。

    GUI でこの手順を示すスクリーンショット。

  13. クローン後に実行する SQL を入力します。デモでは、dev/test/report データベースのデータベース アーカイブ モードをオフにするコマンドを実行しました。

    GUI でこの手順を示すスクリーンショット。

  14. 必要に応じて電子メール通知を設定します。

    GUI でこの手順を示すスクリーンショット。

  15. 概要を確認し、クリック `Finish`クローンを開始します。

    GUI でこの手順を示すスクリーンショット。

  16. クローンジョブを監視する `Monitor`タブ。データベース ボリューム サイズが約 950 GB のデータベースのクローン作成には約 14 分かかりました。

    GUI でこの手順を示すスクリーンショット。

  17. SnapCenterからクローンデータベースを検証します。これはすぐに登録されます。 `Resources`クローン操作直後のタブ。

    GUI でこの手順を示すスクリーンショット。

  18. クローン DB サーバーからクローン データベースをクエリします。プライマリ データベースで発生したテスト トランザクションがクローン データベースまで渡されたことを検証しました。

    [oracle@orac ~]$ sqlplus / as sysdba
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Wed Dec 11 20:16:09 2024
    Version 19.18.0.0.0
    
    Copyright (c) 1982, 2022, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.18.0.0.0
    
    SQL> select name, open_mode, log_mode from v$database;
    
    NAME      OPEN_MODE            LOG_MODE
    --------- -------------------- ------------
    NTAPDEV   READ WRITE           NOARCHIVELOG
    
    SQL> select instance_name, host_name from v$instance;
    
    INSTANCE_NAME
    ----------------
    HOST_NAME
    ----------------------------------------------------------------
    NTAPDEV
    orac
    
    
    SQL> alter pluggable database all open;
    
    Pluggable database altered.
    
    SQL> alter pluggable database all save state;
    
    Pluggable database altered.
    
    
    SQL> alter session set container=ntap_pdb1;
    
    Session altered.
    
    SQL> select * from test;
    
            ID
    ----------
    DT
    ---------------------------------------------------------------------------
    EVENT
    --------------------------------------------------------------------------------
             1
    11-DEC-24 04.38.44.000000 PM
    a test transaction at primary database NTAP on DB server orap.internal.cloudapp.
    net

これで、DEV、TEST、REPORT、またはその他のユース ケース向けの Azure ANF ストレージ上の Oracle Data Guard での Oracle スタンバイ データベース クローンのデモンストレーションが完了します。 ANF 上の Oracle Data Guard 内の同じスタンバイ データベースから複数の Oracle データベースをクローンできます。

詳細情報の入手方法

このドキュメントに記載されている情報の詳細については、次のドキュメントや Web サイトを参照してください。