2.2 Oracle DBCAの使用によるTrue Cacheの構成

True Cache環境を構成する方法として最も簡単なのは、Oracle Database Configuration Assistant (Oracle DBCA)の使用です。

Oracle DBCAはOracle Databaseに付属のアシスタント・ツールであり、これにより、OracleデータベースとTrue Cacheの作成、構成および管理のプロセスが簡略化されます。

ノート:

Oracle Database FreeのTrue Cacheの構成プロセスは簡略化されています。まず、使用しているプラットフォームの『Oracle Database Freeインストレーション・ガイド』を確認します。Oracle Database FreeでのTrue Cacheの構成(Linux)またはOracle Database FreeでのTrue Cacheの構成(Windows)を参照してください。

2.2.1 前提条件

True Cacheを構成する前に、次の前提条件を実行します。

  • True Cacheノードから簡易接続(EZConnect)文字列を使用してプライマリ(ソース)データベースにアクセスするためのネットワーク・パスを設定します。
  • True CacheノードにOracle Databaseソフトウェアをインストールします。
  • プライマリ・データベースがプライマリ・ノードでアーカイブ・ロギング(ARCHIVELOG)モードで実行されていることを確認します。

    REDOログ・ファイルをTrue Cacheノードに送信するには、プライマリ・データベースがARCHIVELOGモードである必要があります。Oracle DBCAにより、プライマリ・データベースがARCHIVELOGモードであることが確認されます。

    プライマリ・データベースがARCHIVELOGモードでない場合は、マウント・モードで再起動し、ALTER DATABASE ARCHIVELOGコマンドを実行し、プライマリ・データベースを再度開きます。

  • プライマリ・データベースにLOG_ARCHIVE_CONFIGおよびLOG_ARCHIVE_DEST_nを設定しないでください。True Cacheでは、プライマリ・データベースにこれらが自動的に構成されます。

  • プライマリ・データベースでLOG_ARCHIVE_DESTが設定されている場合は、削除します。LOG_ARCHIVE_DESTは、LOG_ARCHIVE_DEST_nパラメータと互換性がありません。詳細は、LOG_ARCHIVE_DESTを参照してください。

2.2.2 DBCAを使用したTrue Cacheの作成

Oracle DBCAでTrue Cacheを作成するには、次のステップに従います。

  1. パスワード・ファイル、およびオプションで透過的データ暗号化(TDE)ウォレットを、プライマリ・データベースからTrue Cacheノードにコピーします。次のいずれかのメソッドを使用できます。

    • プライマリ・データベースのパスワード・ファイル(およびオプションのTDEウォレット)をTrue Cacheノード上の任意の場所に手動でコピーします。
    • プライマリ・データベースでDBCAコマンドを実行して、パスワード・ファイル(およびオプションのTDEウォレット)を構成BLOBファイルにパッケージ化します。次に、ファイルをTrue Cacheノードにコピーし、Oracle Homeユーザーがファイルを所有していることを確認します。

      次のコマンドを使用してプライマリ・データベースで構成BLOBファイルを準備します:

      ORACLE_HOME/bin/dbca -configureDatabase -prepareTrueCacheConfigFile -sourceDB primary_db_sid_or_db_unique_name -trueCacheBlobLocation primary_db_config_blob_path -silent

      例:

      $ORACLE_HOME/bin/dbca -configureDatabase -prepareTrueCacheConfigFile -sourceDB primdb1i -trueCacheBlobLocation /tmp/blob_loc2 -silent

      パラメータの詳細は、「configureDatabase」を参照してください。

  2. True Cacheノードで、-createTrueCacheコマンドを実行してTrue Cache構成を完了し、True Cacheを起動します。

    ステップ1でプライマリ・データベースのパスワード・ファイル(およびオプションのTDEウォレット)をTrue Cacheノードにコピーするために使用した方法に応じて、次のいずれかのコマンド形式を選択します。

    • パスワード・ファイル(およびオプションのTDEウォレット)を手動でコピーした場合は、次のコマンドを使用します:

      ORACLE_HOME/bin/dbca -createTrueCache -gdbName true_cache_global_name -sid true_cache_sid -sourceDBConnectionString primary_db_easy_connect_string -passwordFileFromSourceDB password_file_path -sgaTargetInMB sga_memory_size -pgaAggregateTargetInMB pga_memory_size -silent

      パスワード・ファイルを使用する例:

      $ORACLE_HOME/bin/dbca -createTrueCache -gdbName tcdb1 -sid tcdb1 -sourceDBConnectionString primary.example.com:1522/primdb1i.example.com -passwordFileFromSourceDB /tmp/password_loc2/orapwddbmc1 -sgaTargetInMB 20000 -pgaAggregateTargetInMB 4000 -silent
    • 構成BLOBファイルを作成した場合は、次のコマンドを使用します:

      ORACLE_HOME/bin/dbca -createTrueCache -gdbName true_cache_global_name -sid true_cache_sid -sourceDBConnectionString primary_db_easy_connect_string -trueCacheBlobFromSourceDB true_cache_config_blob_path -sgaTargetInMB sga_memory_size -pgaAggregateTargetInMB pga_memory_size -tdeWalletLoginType AUTO_LOGIN -listeners listener_name -silent

      TDEウォレットを使用する例:

      $ORACLE_HOME/bin/dbca -createTrueCache -gdbName tcdb1 -sid tcdb1 -sourceDBConnectionString primary.example.com:1522/primdb1i.example.com -trueCacheBlobFromSourceDB /tmp/blob_loc2/blob.tar.gz -sgaTargetInMB 20000 -pgaAggregateTargetInMB 4000 -tdeWalletLoginType AUTO_LOGIN -listeners LISTENER -silent

    パラメータの詳細は、「createTrueCache」を参照してください。

    ノート:

    Oracle RACプライマリ・データベースの場合、-sourceDBConnectionStringパラメータをSCAN:port/service_nameに設定します

2.2.3 DBCAを使用したTrue Cacheデータベース・アプリケーション・サービスの構成

JDBC ThinドライバでTrue Cacheを使用するには、キャッシュするプライマリ・データベース・アプリケーション・サービスごとに、対応するTrue Cacheデータベース・アプリケーション・サービスを作成します。

これにより、アプリケーションで、JDBC接続URLを変更することなく、既存のJDBC接続をプライマリ・データベースからTrue Cacheに切り替えることが容易になります。これを行うには、23ai JDBC Thinドライバを使用して、接続のReadOnlyパラメータをTRUEまたはFALSEに設定します。

プライマリ・データベースで、次のステップを実行します:

  1. リモート・リスナーを構成します。

    ノート:

    登録に対する有効ノード・チェック(VNCR)がリスナーに構成されているかどうかを確認します。その場合は、リモート・リスナーのlistener.oraファイルのREGISTRATION_INVITED_NODES_LISTENERパラメータにTrue Cacheを追加します。

    ノート:

    Oracle RACプライマリ・データベースの場合、srvctlコマンドライン・ユーティリティを使用して、True CacheノードをSCANリスナーの招待済ノード・リストに追加します。(グリッド所有者ユーザーとしてlistener.oraファイルを手動編集しないでください。)

    例:

    srvctl modify scan_listener -invitednodes true_cache_host -endpoints TCP:port
  2. True Cacheサービスで使用するプライマリ・データベース・アプリケーション・サービスを作成して起動し、そのサービスが実行されていることを確認します。

    プライマリ・データベース構成に基づいて、次のいずれかのオプションを選択します:

    • 単一インスタンス・プライマリ・データベースの場合は、DBMS_SERVICE PL/SQLパッケージを使用します。プラガブル・データベース(PDB)に固有のサービスの場合、DBMS_SERVICEを使用してサービスを開始する前に、特定のPDBに接続するか、セッションで正しいPDBコンテナを設定します。

      単一インスタンスのプライマリ・データベースに対してDBMS_SERVICEパッケージを使用する例を次に示します。

      BEGIN
         DBMS_SERVICE.CREATE_SERVICE('SALES', 'SALES');
         DBMS_SERVICE.START_SERVICE('SALES');
      END;
      /
      PL/SQL procedure successfully completed.
      
      SELECT service_id, name, true_cache_service FROM v$active_services WHERE name='SALES';
      
      SERVICE_ID NAME               TRUE_CACHE_SERVICE
      ---------- ------------------ ------------------
               6 SALES
      
      // TRUE_CACHE_SERVICE will be filled in by this (dbca -configureTrueCacheInstanceService) command
    • Oracle RACプライマリ・データベースの場合は、srvctlコマンドライン・ユーティリティを使用してプライマリ・データベース・サービスを追加します。プライマリ・インスタンスでそのサービスを起動します。Oracle Clusterware管理のインスタンスの場合のみ、srvctlを使用します。

      srvctl add service -db primary_db_unique_name -service primary_db_service_name -preferred primary_db_instance_list -pdb primary_pdb_name

      例:

      srvctl add service -db primdb1i -service sales -preferred primdb1i1,primdb1i2 -pdb sales_pdb
  3. -configureTrueCacheInstanceServiceパラメータを指定してdbca -configureDatabaseコマンドを実行し、True Cacheを構成します。

    これにより、プライマリ・データベースでTrue Cacheデータベース・アプリケーション・サービスが構成され、True CacheでTrue Cacheサービスが開始されます。True Cacheデータベース・アプリケーション・サービスごとにこのコマンドを実行します。

    ノート:

    このコマンドを実行するには、プライマリ・データベース・アプリケーション・サービスがすでに存在している必要があります。

    ノート:

    複数のTrue Cacheが同じサービスを提供するTrue Cacheの共通構成の場合、DBCAは最初のTrue Cacheでサービスを開始してから、他のTrue Cacheでサービスを手動で開始します。
    ORACLE_HOME/bin/dbca -configureDatabase -configureTrueCacheInstanceService -sourceDB primary_db_sid_or_db_unique_name -trueCacheConnectString true_cache_easy_connect_string -trueCacheServiceName true_cache_service_name -serviceName primary_db_service_name -pdbName primary_pdb_name -silent

    例:

    $ORACLE_HOME/bin/dbca -configureDatabase -configureTrueCacheInstanceService -sourceDB primdb1i -trueCacheConnectString tc.example.com:1522/tcdb1.example.com -trueCacheServiceName sales_tc -serviceName sales -pdbName sales_pdb -silent

    パラメータの詳細は、「configureDatabase」を参照してください。

  4. データベース・アプリケーション・サービスがTrue Cacheで起動した後、lsnrctlコマンドを使用して、True Cacheサービス登録のリモート・リスナー・サービスを検証します。

    「リモート・リスナー構成の検証」を参照してください。

  5. 複数のTrue Cacheが同じサービスを提供するTrue Cacheの共通構成の場合は、すべての追加True Cacheでサービスを開始します。例:

    EXEC DBMS_SERVICE.START_SERVICE('SALES_TC');

2.2.4 True CacheのためのOracle DBCAコマンドおよびパラメータ

True Cacheを構成するには、次のOracle DBCAコマンドおよびパラメータを使用します。

2.2.4.1 configureDatabase

configureDatabaseコマンドにより、True Cacheのプライマリ・データベースを構成します。このコマンドは、プライマリ・データベースで実行します。

パラメータ

True Cacheの場合は、次の構文でdbca -configureDatabaseコマンドを使用します。

ノート:

この表では、True Cacheに固有の、configureDatabaseのパラメータを示しています。完全な構文およびパラメータについては、『Oracle Multitenant管理者ガイド』configureDatabaseを参照してください。

表2-1 configureDatabaseのパラメータ

パラメータ 必須/オプション 説明
--prepareTrueCacheConfigFile True Cacheに必要

このオプションを使用して、プライマリ・データベースのパスワード・ファイルまたはウォレットを含む構成BLOBファイルを準備します。

このオプションでは次の追加パラメータを入力します:

  • -sourceDB: プライマリ・データベースのシステム識別子(SID)または一意のデータベース名(DB_UNIQUE_NAME)を入力します。
  • -tdeWalletPassword: プライマリ・データベースでTransparent Data Encryption (TDE)ウォレットを使用する場合は、そのウォレットのパスワードを入力します。このパラメータは省略可能です。
  • -trueCacheBlobLocation: プライマリ・データベースでの構成BLOBファイルの保存先となるパスを入力します。このパラメータは省略可能です。
-configureTrueCacheInstanceService True Cacheに必要

このオプションを使用して、プライマリ・データベースでTrue Cacheデータベース・アプリケーション・サービスを構成し、True Cacheでそのサービスを開始します。

このオプションでは次の追加パラメータを入力します:

  • -serviceName: プライマリ・データベース・アプリケーション・サービスの名前を入力します。
  • -sourceDB: 単一インスタンス・データベースの場合は、プライマリ・データベースのSIDを入力します。Oracle RACデータベースの場合は、そのデータベースの一意の名前(DB_UNIQUE_NAME)を入力します。
  • -trueCacheConnectString: True Cacheに接続するための簡易接続(EZConnect)文字列を入力します。

    例: host:port/service_name

  • -trueCacheServiceName: True Cacheデータベース・アプリケーション・サービスの名前を入力します。
  • -pdbName: プライマリ・プラガブル・データベース(PDB)の名前を入力します。PDB用のTrue Cacheサービスを作成するには、このパラメータが必要です。この場合、serviceNameは、プライマリ・データベース内の既存のPDBサービス名です。
-cleanupTrueCacheInstanceService True Cacheに必要

このオプションを使用して、プライマリ・データベース構成からTrue Cacheデータベース・アプリケーション・サービスを削除します(たとえば、True Cacheを削除する場合)。

このオプションでは次の追加パラメータを入力します:

  • -serviceName: プライマリ・データベース・アプリケーション・サービスの名前を入力します。
  • -sourceDB: プライマリ・データベースのSIDまたは一意のデータベース名(DB_UNIQUE_NAME)を入力します。
  • -trueCacheConnectString: True Cacheに接続するための簡易接続(EZConnect)文字列を入力します。

    例: host:port/service_name

  • -trueCacheServiceName: True Cacheデータベース・アプリケーション・サービスの名前を入力します。

2.2.4.2 createTrueCache

createTrueCacheコマンドにより、True Cacheを構成します。このコマンドは、True Cacheノードで実行します。

構文とパラメータ

次の構文でdbca -createTrueCacheコマンドを使用します。

dbca -createTrueCache
   -dbUniqueName true_cache_unique_name | -gdbName true_cache_global_name
   -sourceDBConnectionString primary_db_easy_connect_string
   -trueCacheBlobFromSourceDB true_cache_config_blob_path | -passwordFileFromSourceDB password_file_path
      [-tdeWalletFromSourceDB tde_wallet_path]
   [-createListener new_database_listener]
   [-datafileDestination true_cache_control_file_path
   [-initParams initialization_parameters_list
      [-initParamsEscapeChar initialization_parameters_escape_character]]
   [-listeners listener_list]
   [-pgaAggregateTargetInMB pga_memory_size]
   [-sgaTargetInMB sga_memory_size]
   [-sid true_cache_sid]
   [-sourceTdeWalletPassword primary_db_wallet_password]
   [-tdeWalletLoginType {PASSWORD | AUTO_LOGIN | LOCAL_AUTO_LOGIN}]
   [-tdeWalletRoot tde_wallet_root_init_parameter]
   [-useWalletForDBCredentials {true | false}
      -dbCredentialsWalletLocation wallet_files_directory
      [-dbCredentialsWalletPassword wallet_account_password]]

表2-2 createTrueCacheのパラメータ

パラメータ 必須/オプション 説明

-dbUniqueName

true_cache_unique_name

または

-gdbName

true_cache_global_name

必須 このTrue Cacheの一意の名前、またはグローバル・データベース名を入力します。

-sourceDBConnectionString

primary_db_easy_connect_string

必須

プライマリ・データベースに接続するための簡易接続(EZConnect)文字列を入力します。

例: host:port/service_name

ノート: Oracle RACプライマリ・データベースの場合、-sourceDBConnectionStringパラメータをSCAN:port/service_nameに設定します

-trueCacheBlobFromSourceDB

true_cache_config_blob_path

または

-passwordFileFromSourceDB

password_file_path

必須

次のうち1つを入力してください。

  • プライマリ・データベースのパスワード・ファイルまたはウォレットを含む構成BLOBファイルのフルパスおよびファイル名。これは、True Cacheノード上のファイルがある場所のパスです。
  • True Cacheノードにコピーされた、プライマリ・データベースのパスワード・ファイルへのパス。

-passwordFileFromSourceDBを使用する場合は、次の追加パラメータを入力することもできます:

-tdeWalletFromSourceDB: True Cacheノードにコピーされた、プライマリ・データベースのTransparent Data Encryption (TDE)ウォレット・ファイルへのパスを入力します。プライマリ(ソース)データベースでTDEが有効になっている場合のみ、TDEウォレット・ファイルをコピーし使用できます。そうでない場合、ウォレット・ファイルは必要ありません。

-createListener

new_database_listener

オプション 作成する新しいデータベース・リスナーを入力し、LISTENER_NAME:PORTという形式でデータベースを登録します。

-datafileDestination

true_cache_control_file_path

オプション

True Cache制御ファイル、スタンバイREDOログ・グループおよび一時データ・ファイルが格納される場所を入力します。

True CacheでOracle Automatic Storage Management (ASM)ストレージまたはOracle Exadata Exascaleストレージ・ボールトが使用される場合は、-datafileDestinationのパスにASMディスク・グループ名またはExascaleボールト名の接頭辞を付け、次の追加パラメータを使用します:

-useOMF: Oracle管理ファイル(OMF)を使用するには、trueと入力します。そうでない場合は、falseを入力します

ノート:

ディレクトリに、プライマリ・データベースの一時ファイルを保持するのに十分な領域と、ブロック・サイズおよびスレッドごとの最大オンラインREDOログ・サイズの4倍を足した領域があることを確認します。たとえば、プライマリに2つのREDOログ・スレッドがあり、各スレッドに512バイト・ブロックの2つの2GBのオンラインREDOログ、512バイト・ブロックの2つの4GBのオンラインREDOログ、4KBブロックの3つの8GBのオンラインREDOログがある場合、次の式を使用します: 2スレッドx (4GB x 2 (512バイト・ブロックの大きい方)) + (8KB x 3 (4KBブロック))

-initParams

initialization_parameters_list

オプション

このTrue Cacheのその他の初期化パラメータ値を含むname=valueペアをカンマ区切りリストで入力します。

初期化パラメータの複数の値の間に特定のエスケープ文字を使用するために、-initParamsEscapeCharパラメータを指定することもできます。エスケープ文字を指定しない場合は、デフォルトのエスケープ文字としてバックスラッシュ(\)が使用されます。

-listeners

listeners_list

オプション 1つ以上のリスナーがすでに存在する場合は、データベースの構成に使用できる既存のリスナーをカンマ区切りリストで入力します。既存のリスナーを指定しない場合、DBCAによって新しいリスナーが作成されます。

-pgaAggregateTargetInMB

pga_memory_size

オプション ターゲットのプログラム・グローバル領域(PGA)メモリーの集計の値(MB単位)を入力して、このTrue Cacheにアタッチされているすべてのサーバー・プロセスで使用できるようにします。

-sgaTargetInMB

sga_memory_size

オプション このTrue Cacheのシステム・グローバル領域(SGA)メモリー・サイズの値(MB単位)を入力します。

-sid

true_cache_sid

オプション このTrue Cacheのシステム識別子(SID)を入力します。

-sourceTdeWalletPassword

primary_db_wallet_password

オプション プライマリ・データベースでTDEウォレットが使用されている場合は、そのウォレットのパスワードを入力します。

-tdeWalletLoginType

{PASSWORD | AUTO_LOGIN | LOCAL_AUTO_LOGIN}

オプション

オラクルでは、True Cacheの起動ごとにパスワード・ウォレットを手動で開く必要がないように、True CacheのAUTO_LOGINまたはLOCAL_AUTO_LOGINウォレットをお薦めします。

ウォレット・タイプの詳細は、Oracle Databaseウォレットについての説明を参照してください

-tdeWalletRoot

tde_wallet_root_init_parameter

オプション True Cacheのウォレットを配置する場所を指定するTrue Cache TDEウォレット・ルート初期化パラメータの場所を入力します。

-useWalletForDBCredentials

{true | false}

オプション

プライマリ・データベースでデータベース資格証明にOracleウォレットが使用されている場合は、trueを入力します。デフォルトはfalseです。

trueを入力した場合は、さらに次のパラメータも入力します:

  • -dbCredentialsWalletLocation: Oracleウォレット・ファイルが含まれているディレクトリのパスを入力します。

  • -dbCredentialsWalletPassword: 自動ログインが無効になっている状態でウォレットを開くために、Oracleウォレット・アカウントのパスワードを入力します。このパラメータは省略可能です。

関連トピック