ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server JDBCデータ・ソースの管理
12c (12.1.2)
E48088-03
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストへ移動
製品
目次へ移動
目次

前
 
次
 

6 Oracleドライバおよびデータベースの詳細な構成

この章では、データ・ソースで接続予約の管理を可能にする詳細な構成オプションについて説明します。

アプリケーション・コンティニュイティ

現在の環境では、基盤になるソフトウェア・レイヤー、ハードウェア・レイヤー、通信レイヤーおよび記憶域レイヤーの停止について、アプリケーション開発者が明確に対処する必要があります。そのため、アプリケーション開発は複雑化し、機能停止はユーザーに対して表面化します。たとえば、ユーザーに対して送信ボタンを2回クリックしないように警告するアプリケーションがあります。その警告を見落としたユーザーは、意図しないうちに商品を2回購入したり、同じ請求書に対して複数回の支払を実行してしまうことがあります。

アプリケーション・コンティニュイティ(リプレイとも呼ばれる)は、GridLinkデータ・ソースと汎用データ・ソースに対応するアプリケーションに依存しない汎用のインフラストラクチャであり、アプリケーション側からの作業の回復を可能にし、多くのシステム障害、通信障害およびハードウェア障害をマスクします。つまり、エンド・ユーザーのトランザクションは、時差なしに1回で実行されるようになります。エンド・ユーザーがサービスの中断を認識するとしても、継続しても意味のない機能停止の場合に限られます。

次に示す各項では、アプリケーション・コンティニュイティの構成方法と使用方法について説明します。

アプリケーション・コンティニュイティの機能

計画済停止か計画外停止かにかかわらず、次に示すデータベース・サービスの損失による停止については、アプリケーション・コンティニュイティによりデータベース・セッションが再構築されます。高速アプリケーション通知またはリカバリ可能なORACLEエラーで停止が識別されると、Oracleドライバは次のように動作します。

  • 新しいデータベース・セッションを確立して、未処理の状態を解消します。

  • コールバックが登録されている場合は、コールバックを発行して、そのセッションの初期状態をアプリケーションが再確立できるようにします。

  • リクエスト中に累積した保存済の履歴を実行します。

Oracleドライバは、リプレイ・コールのタイミングを判断します。コールは、アプリケーションがデータベースの状態を変更する方法に応じて経時的に処理されるか、遅延処理の実装を使用して処理されます。リプレイは、Oracle 12c Database Serverで制御されます。リプレイが承認されるようにするには、リプレイされるコールごとに、元のコールの実行中にアプリケーションで表示されていて潜在的に使用されていたクライアントの表示状態とまったく同じ状態を返す必要があります。

図6-1 アプリケーション・コンティニュイティ

図6-1については周囲のテキストで説明しています。

要件および考慮事項

次の項では、WebLogicアプリケーションでアプリケーション・コンティニュイティを使用する際の要件と考慮事項について説明します。

  • Oracle 12c JDBCドライバとデータベースは必須です。付録A「Oracle 12cデータベースの使用」を参照してください。

  • アプリケーション・コンティニュイティは、読取りトランザクションと読取り/書込みトランザクションをサポートします。XAトランザクションは、サポートされていません。アプリケーション・コンティニュイティ対応のOracleドライバなど、非XAドライバを使用するトランザクションをサポートする場合は、『Oracle WebLogic Server JDBCデータ・ソースの管理』の非XA JDBCドライバによるグローバル・トランザクションの有効化に関する項を参照してください。


    注意:

    autocommit=FALSEを設定していることを確認して、トランザクション・セマンティクスが分断化と、環境でのアプリケーション・コンティニュイティの無効化を防止してください。


  • 非推奨のoracle.sql.*具体クラスはサポートされていません。該当部分は、それに対応するoracle.jdbc.*インタフェースまたはjava.sql.*インタフェースのどちらかを使用するように変更する必要があります。標準のjava.sql.*インタフェースの使用をお薦めします。『Oracle WebLogic Server JDBCアプリケーションの開発』のOracle JDBCタイプのAPI拡張機能の使用方法に関する項を参照してください。

  • アプリケーション・コンティニュイティは、中間結果をメモリーに格納することで動作します。アプリケーションは、この機能なしで実行するよりも実行速度が遅くなり、より大量のメモリーが必要になります。

  • WebLogicの文キャッシュがアプリケーション・コンティニュイティで構成されている場合は、そのキャッシュは接続がリプレイされるたびにクリアされます。

  • アプリケーション・コンティニュイティ機能には、追加の制限事項と例外事項があります。これらは、アプリケーションがリプレイを使用できるかどうかに影響することがあります。詳細は、Oracle® Database JDBC開発者ガイドのJavaのアプリケーション・コンティニュイティに関する項を参照してください。

  • データソースのURLで指定されるデータベース・サービスは、フェイルオーバー・タイプにTRANSACTIONを設定し、-commit_outcomeパラメータにTRUEを設定して構成する必要があります。次に例を示します。

    srvctl modify service -d mydb -s myservice -e TRANSACTION -commit_outcome TRUE -rlbgoal SERVICE_TIME -clbgoal SHORT

アプリケーション・コンティニュイティの構成

次の各項では、環境内にアプリケーション・コンティニュイティを実装する方法について説明します。

アプリケーション・コンティニュイティ対応ドライバの選択

適切なJDBCドライバを使用するようにデータ・ソースを構成するには、次のいずれかの方法を使用します。

  • 新しいデータ・ソースを作成する場合は、構成ウィザードのドロップダウン・メニューからデータベース・ドライバを選択するように求められたときに、対象の環境でアプリケーション・コンティニュイティをサポートする適切なOracleドライバを選択します。Oracle WebLogic Server管理コンソール・オンライン・ヘルプアプリケーション・コンティニュイティの有効化に関する項を参照してください。

  • 管理コンソールで既存のデータ・ソースを編集する場合は、「接続プール」タブを選択して、「ドライバ・クラス名」oracle.jdbc.replay.OracleDataSourceImplに変更してから、「保存」をクリックします。

  • テキスト・エディタまたはWLSTでデータ・ソースを作成または編集する場合は、JDBCドライバをoracle.jdbc.replay.OracleDataSourceImplに設定します。

「要件および考慮事項」を参照してください。

接続コールバックの使用方法

次の各項では、接続コールバックの使用方法について説明します。

初期化コールバックの作成

接続初期化コールバックを作成する場合は、アプリケーションにoracle.ucp.jdbc.ConnectionInitializationCallbackインタフェースのinitialize(java.sql.Connection connection)メソッドを実装する必要があります。コールバックは、接続プールごとに1つのみ作成できます。

ラベリング・コールバックが接続プールに登録されていると、コールバックは無視されます。それ以外の場合、コールバックはプールから接続がチェックアウトされるたびに実行されます。また、リカバリ可能なエラーに続くリプレイ時に再接続が成功するたびに実行されます。実行時とリプレイ時に同じコールバックを使用することで、リプレイ時には、元のセッションが確立されたときに使用されたものと完全に同じ初期化が使用されるようになります。コールバックの呼出しが失敗すると、その接続についてのリプレイは無効になります。


注意:

接続初期化コールバックは、クライアント(JDBC over RMI)ではサポートされません。


次の例では、単純な初期化コールバックの実装を示します。

. . .
import oracle.ucp.jdbc.ConnectionInitializationCallback ;
. . .
class MyConnectionInitializationCallback implements ConnectionInitializationCallback { 
  public MyConnectionInitializationCallback()  { 
  }
  public void initialize(java.sql.Connection connection)  throws SQLException {
     // Re-set the state for the connection, if necessary
  }
}
初期化コールバックの登録

WLDataSourceインタフェースには、初期化コールバックを登録するためのregisterConnectionInitializationCallback(ConnectionInitializationCallback callback)メソッドが用意されています。1つの接続プールに登録できるコールバックは1つのみです。次の例は、MyConnectionInitializationCallbackクラスに実装されている初期化コールバックの登録方法を示しています。

. . .
import weblogic.jdbc.extensions.WLDataSource;
. . .
MyConnectionInitializationCallback callback = new MyConnectionInitializationCallback();
((WLDataSource)ds).registerConnectionInitializationCallback(callback);
. . .

また、コールバックは、管理コンソールからデータ・ソースの「Oracle」タブで、「接続初期化コールバック」属性にコールバック・クラスを入力することでも登録できます。実行時にコールバックを設定するのではなく、このコールバック属性を構成するようにしてください。Oracle WebLogic Server管理コンソール・オンライン・ヘルプアプリケーション・コンティニュイティの有効化に関する項を参照してください。

初期化コールバックの登録解除

WLDataSourceインタフェースには、ConnectionInitializationCallbackの登録を解除するためのunregisterConnectionInitializationCallback()メソッドが用意されています。次の例は、初期化コールバックの削除方法を示しています。

. . .
import weblogic.jdbc.extensions.WLDataSource;
((WLDataSource)ds).unregisterConnectionInitializationCallback();
. . .

リプレイのタイムアウトの設定

管理コンソールで、データ・ソースの「Oracle」タブにあるReplayInitiationTimeout属性を使用すると、接続のリプレイ・セッション・コンテキストをタイムアウトにして終了するまでに、データ・ソースでアプリケーション・コンティニュイティのリプレイ処理に許容する時間を設定できます。

WebLogic HTTPリクエスト・タイムアウトを使用するアプリケーションの場合は、ReplayInitiationTimeoutが適切に設定されていることを確認してください。

  • ReplayInitiationTimeoutの値はHTTPセッション・タイムアウトの値と等しくなるように設定して、HTTPセッション全体がリプレイ・セッションでカバーされるようにする必要があります。デフォルトのReplayInitiationTimeoutとデフォルトのHTTPセッション・タイムアウトは、どちらも3600秒です。

  • HTTPタイムアウト値がReplayInitiationTimeout値よりも長い場合、リプレイ・イベントはHTTPセッション全体には使用できなくなります。

  • HTTPタイムアウト値がReplayInitiationTimeout値よりも短い場合は、アプリケーション側で接続を閉じてリプレイ・セッションを終了する必要があります。

特定の接続に対するアプリケーション・コンティニュイティの無効化

アプリケーション・コンティニュイティは、次のコードを使用することで、接続単位で無効化できます。

. . .
if (connection instanceof oracle.jdbc.replay.ReplayableConnection) {
 ((oracle.jdbc.replay.ReplayableConnection)connection).disableReplay();
}
. . .

アプリケーション・コンティニュイティのロギングの構成

アプリケーション・コンティニュイティ処理のロギングを有効化するには、次のWebLogicプロパティを使用します。

-Dweblogic.debug.DebugJDBCReplay=true

注意:

ドライバ・レベルのデバッグを行うには、ojdbc6_g.jarまたはojdbc7_g.jarを使用する必要があります。


-Djava.util.logging.config.file=configfileを使用して、ログ出力のフォーマットとロギング・レベルを制御します(configfileは、標準JDKのロギングで使用される構成ファイル・プロパティのパスとファイル名です)。次に、SimplFormatterを使用する構成ファイルの例を示します。この例では、ロギング・レベルをFINESTに設定しています。

handlers = java.util.logging.ConsoleHandler 
java.util.logging.ConsoleHandler.level = ALL
java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter 
#OR - use other formatters like the ones below 
#java.util.logging.ConsoleHandler.formatter = java.util.logging.XMLFormatter 
#java.util.logging.ConsoleHandler.formatter = oracle.ucp.util.logging.UCPFormatter 

#OR - use FileHandler instead of ConsoleHandler 
#handlers = java.util.logging.FileHandler 
#java.util.logging.FileHandler.pattern = replay.log 
#java.util.logging.FileHandler.limit = 3000000000
#java.util.logging.FileHandler.count = 1 
#java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter
oracle.jdbc.internal.replay.level attribute=FINEST

『Oracle WebLogic ServerにデプロイされたアプリケーションへのWebLogicロギング・サービスの追加』を参照してください。

Databaseリリース12.1.0.1におけるアプリケーション・コンティニュイティに関する制限

次の項では、Oracle Databaseリリース12.1.0.1でアプリケーション・コンティニュイティを使用する場合の制限について説明します。

  • プロキシ認証はサポートされていません。つまり、トランザクション・リクエストはリプレイされず、停止が発生した場合は元のjava.sql.SQLRecoverableExceptionがスローされます。

  • DRCPはサポートされません。つまり、Webリクエストはリプレイされず、停止が発生した場合は元のjava.sql.SQLRecoverableExceptionがスローされます。

  • ALTER SESSION SET CONTAINERを使用したPDBテナント切替えと併用できません。

データベース常駐接続プーリング

データベース常駐接続プーリング(DRCP)により、Oracleデータベースに常駐する複数のWeb層および中間層のデータ・ソースで、データベース・サーバーの処理とセッションをプールできるようになります。Database Resident Connection Pooling (DRCP)を参照してください(http://www.oracle.com/technetwork/articles/oracledrcp11g-1-133381.pdf)。

次の各項では、WebLogic ServerでのDRCPの使用と構成について説明します。

要件および考慮事項

次の項では、WebLogicアプリケーションでDRCPを使用する際の要件と考慮事項について説明します。

  • Oracle 12c JDBCドライバとデータベースは必須です。「Oracle 12cデータベースの使用」を参照してください。

  • WebLogicの文キャッシュがDRCPと併せて構成されている場合、その文キャッシュは接続がclose()でプールに返されるたびにクリアされます。

  • WebLogic Serverのデータ・ソースは、DRCP接続にラベリングする接続をサポートしていないため、SQLExceptionがスローされます。たとえば、WLDataSourceのプロパティにgetConnectionを使用したり、LabelableConnectionのメソッドが呼び出されると、例外が生成されます。ただし、WLDataSourceregisterConnectionLabelingCallbackおよびremoveConnectionLabelingCallbackは許可されています。

  • WebLogic Serverは、システム・プロパティとしてのoracle.jdbc.DRCPConnectionClassの定義をサポートしていません。これは、接続プロパティとしてデータ・ソース記述子で定義する必要があります。

  • DRCPを効果的にするために、アプリケーションは処理の完了後にできるだけ早く接続プールに接続を返す必要があります。接続を保持して収集を使用すると、DRCPの使用が無意味になります。

  • DRCPの構成の詳細は、Oracle®データベース管理者ガイドのデータベース常駐接続プールの構成に関する項を参照してください。

DRCPの構成

次の各項では、対象の環境にDRCPを構成する方法について説明します。

DRCP対応データ・ソースの構成

DRCPをサポートするようにデータ・ソースを構成するには:

  • 新しいデータ・ソースを作成する場合は、データ・ソースの構成ウィザードの追加構成プロパティの下にある「接続プロパティ」タブで、「oracle.jdbc.DRCPConnectionClass」フィールドにDRCP接続クラスを入力します。Oracle WebLogic Server管理コンソール・オンライン・ヘルプJDBC汎用データ・ソースの作成に関する項JDBC Active GridLinkデータ・ソースの作成に関する項を参照してください。

    結果として、データ・ソースは次のようになります。

    • 作成された短縮形のURLに、接尾辞:POOLEDが追加されます。例: jdbc:oracle:thin:@//host:port/service_name:POOLED

    • サービス形式のURLの場合は、CONNECT_DATA要素の(SERVICE_NAME=name)パラメータの後に(SERVER=POOLED)が追加されます。

    • DRCP接続クラスの値/名前ペアは、「接続プール」タブに接続プロパティとして表示されます。例: oracle.jdbc.DRCPConnectionClass=myDRCPclass

  • 管理コンソールで既存のデータ・ソースを編集する場合は、「接続プール」タブを選択して、次の手順を実行します。

    • 「URL」を変更して、接尾辞:POOLEDを含めます。サービスURLの場合は、(SERVER=POOLED)を含めます。

    • 接続のプロパティを更新して、DRCP接続クラスの値/名前ペアを含めます。例: oracle.jdbc.DRCPConnectionClass=myDRCPclass

    • 「保存」をクリックします。

  • テキスト・エディタまたはWLSTを使用して、データ・ソースを作成または編集する場合は、次の手順を実行します。

    • URL要素を変更して、接尾辞:POOLEDを含めます。サービスURLの場合は、(SERVER=POOLED)を含めます。例: <url>jdbc:oracle:thin:@host:port:service:POOLED</url>

    • 接続のプロパティを更新して、DRCP接続クラスの値/名前ペアを含めます。次に例を示します。

      <properties>
            <property>
              <name>aname</name>
              <value>avalue</value>
            </property>
            <property>
              <name>oracle.jdbc.DRCPConnectionClass</name>
              <value>myDRCPclass</value>
            </property>
      </properties>
      
  • データソース定義に、oracle.jdbc.DRCPConnectionClass接続プロパティまたはPOOLED URLのどちらか一方のみが含まれている場合、WebLogic Serverは構成エラーをスローします。この検証は、コンソールで接続リスナーをテストするとき、システム・ブート中にデータソースをデプロイするとき、またはデータソースをターゲット指定するときに実行されます。

DRCP対応データベースの構成

DRCPをサポートするようにOracleデータベースを構成するには:

  • DRCPは、データベース側で有効化する必要があります。DRCPの有効化には、次のコマンドを使用します。

    SQL> EXECUTE DBMS_CONNECTION_POOL.START_POOL();

  • 次に示すサーバー・プール構成のパラメータは、適切に設定する必要があります。

    • MAXSIZE: プール内の最大プール・サーバー数。デフォルト値は40です。接続プールでは、プールされたサーバーの5%が認証用に確保され、プールされたサーバーの少なくとも1つは認証用に常時確保されます。このパラメータを設定する場合は、認証と接続の両方に十分なプール・サーバーがあることを確認します。

      MAXSIZEには、DRCPを使用する最大のWebLogic接続プールのサイズを設定してください。

    • INACTIVITY_TIMEOUT: プール内のプール・サーバーがアイドル状態を維持する最大時間(秒単位)。この時間を過ぎると、サーバーは終了される。デフォルト値は300です。サーバー・プールのサイズがMINSIZEの場合には、このパラメータは適用されません。

      WebLogicデータソースから確保した接続が使用されていない場合は、非アクティブのタイムアウトが発生して、DRCP接続が解放されます。INACTIVITY_TIMEOUTを適切に設定するか、使用されない接続はWebLogicデータソースに返すようにしてください。

    • MAX_THINK_TIME: クライアントがプールからプール・サーバーを取得した後で非アクティブ状態でいられる最大時間(秒単位)。クライアント・アプリケーションが、プールからプール・サーバーを取得した後、MAX_THINK_TIMEで指定した時間内にデータベース・コールを発行しない場合、プール・サーバーは解放されてクライアント接続が終了します。デフォルト値は120です。

      WebLogicデータソースから確保した接続は、MAX_THINK_TIME以内にアクティビティがないと、その接続は解放されます。Test Connections On Reserveを設定するか(「予約済の接続のテスト」を参照)、MAX_THINK_TIMEを適切に設定します。

    サーバー・プール構成パラメータが対象の環境に応じて適切に設定されていないと、データソース接続が終了されることがあるため、アプリケーションはWebLogicデータソース接続にアクセスするときに、ソケット例外などのエラーを受け取る可能性があります。

Global Database Services

Global Data Services (GDS)により、分散データベース環境でシームレスな集中管理を提供するグローバル・サービスが使用できるようになります。グローバル・サーバーは、複数のRACおよび単一インスタンスのOracleデータベースをData GuardやGoldenGateなどのレプリケーション技術で相互接続して、それら全体でのロード・バランシング、フォルト・トレランスおよびリソース使用率を自動化します。

次の各項では、WebLogic ServerのGDSに対する要件と構成について説明します。

要件および考慮事項

次の項では、WebLogic ServerでGlobal Database Servicesを使用する際の要件と考慮事項について説明します。

  • Oracle 12c JDBCドライバとデータベースは必須です。「Oracle 12cデータベースの使用」を参照してください。

  • 単一のSCANアドレスを使用して、複数のGlobal Service Manger (GSM)アドレスを置換することはできません。

  • 更新操作が適切に処理されるようにするには、プライマリ・データベースでのみ有効になる更新用のサービスを定義する必要があります。

  • プライマリ・データベースとセカンダリ・データベースに配置される読取り専用操作のサービスは個別に定義してください。

  • 1つのURLに定義できるサービスは1つに限られ、1つのデータソース構成に定義できるURLは1つになるため、一方のデータソースを更新サービス用に定義し、もう一方のデータソースを読取り専用サービス用に定義する必要があります。

  • 更新操作が更新データソースで処理され、読取り専用操作が読取り専用データソースで処理されるように、アプリケーションを作成する必要があります。

GDS接続対応のGridLinkデータソースの作成

管理コンソールを使用して、GridLinkデータソースを作成します。このデータソースでは、GDS接続を提供するように変更したURLを使用します。Oracle WebLogic Server管理コンソール・オンライン・ヘルプJDBC Active GridLinkデータ・ソースの作成に関する項を参照してください。

GDS URLの接続情報は、RACクラスタの接続情報と類似しています。これには、次の基本情報が含まれています。

  • サービス名(グローバル・サービス名)

  • Global Service Managerのアドレス/ポートのペア

  • CONNECT_DATAパラメータのGDSリージョン

次に、サンプルURLを示します。

jdbc:oracle:thin:@(DESCRIPTION= 
    (ADDRESS_LIST=(LOAD_BALANCE=ON)(FAILOVER=ON) 
         (ADDRESS=(HOST=myHost1.com)(PORT=1111)(PROTOCOL=tcp)) 
         (ADDRESS=(HOST=myHost2.com)(PORT=2222)(PROTOCOL=tcp))) 
    (CONNECT_DATA=(SERVICE_NAME=my.gds.cloud)(REGION=west)))

プラガブル・データベースを使用するコンテナ・データベース

コンテナ・データベース(CDB)はOracleデータベース機能の1つであり、多数のデータベースを、単一CDBに含まれる複数のプラガブル・データベース(PDB)を使用して単一データベースに統合することにより、多数のデータベースを持つ場合のオーバーヘッドを最小限に抑えます。『Oracle Database管理者ガイド』のOracleプラガブル・データベースの管理に関する項を参照してください。

PDBアクセス対応サービスの作成

PDBへのアクセスは、WebLogic Serverデータ・ソースに対して完全に透過的になります。その他のデータベースと同様に、サービスを含むURLを使用してアクセスします。サービスは、PDBに関連付けられている必要があります。これは、SQLPlusで、セッションをPDBに関連付けて、サービスを作成し、そのサービスを開始することで作成できます。

alter session set container = cdb1_pdb1; -- configure service for each PDB
execute dbms_service.create_service('replaytest_cdb1_pdb1.regress.rdbms.dev.us.myCompany.com','replaytest_cdb1_pdb1.regress.rdbms.dev.us.myCompany.com');
execute DBMS_SERVICE.START_SERVICE('replaytest_cdb1_pdb1.regress.rdbms.dev.us.myCompany.com');

アプリケーション・コンティニュイティと併用するようにサービスを設定するには、サービスを適切に構成する必要があります。次に、SQLPlusの例を示します。

declare
params dbms_service.svc_parameter_array ;
begin
params('goal') := 'service_time' ;
params('commit_outcome') := 'true' ;
params('aq_ha_notifications') := 'true' ;
params('failover_method') := 'BASIC' ;
params('failover_type') := 'TRANSACTION' ;
params('failover_retries') := 60 ;
params('failover_delay') := 2 ;
dbms_service.modify_service('replaytest_cdb1_pdb1.regress.rdbms.dev.us.myCompany.com', params);
end;
/

DRCPおよびCDB/PDB

DRCPは、PDBでは使用できません。CDBにのみ関連付ける必要があります。構成する場合は、CDBを指すようにセッションを設定して、DRCPプールを開始します。次に例を示します。

alter session set container = cdb$root;
execute dbms_connection_pool.configure_pool('SYS_DEFAULT_CONNECTION_POOL');
execute dbms_connection_pool.start_pool();

JDBCを使用したPDBの設定

初めてプールの接続を作成するときには、CDB内の特定のPDBに関連付けられたサービスを含むURLを使用して接続を作成します。同じCDB内では、動的なPDBの変更が可能です。PDBを変更するには、次のSQL文を実行します。

ALTER SESSION SET CONTAINER = name;

コンテナの変更後は、次の項目が変更できなくなります。

  • RACインスタンス

  • 接続オブジェクト

  • Weblogicの接続ライフサイクル(enabled/disabled/destroyed)

  • WebLogicの接続属性。

それ以外の接続に関する状態は、PDB間での情報の漏洩を防止するために消去されます。

構成後には、次の項目がリセットされます。

  • アプリケーション・コンティニュイティ(リプレイ)

  • DRCP

  • client identifier

  • プロキシ・ユーザー

  • 接続収集コールバック。

テナントの切替えに関する制限

ALTER SESSION SET CONTAINERを使用してテナント間で切替えを行う場合、新しいPDBでどのユーザー・サービスに切り替えるかを示すメカニズムが現在ありません。かわりに、そのテナントのPDBサービスが使用されます。PDBサービスは、各PDB用に作成される管理サービスです(したがって、各PDBには少なくとも1つの管理サービスがあります)。これは管理サービスであり、ユーザー・レベルのサービス機能はサポートされていません。将来のデータベース・リリースでは、ユーザー・サービスを許可することによって、こうした制限は削除される予定です。

データベース・リリース12.1でテナントの切替えを使用する場合、WebLogic Serverには他にも次の制限事項があります。