Oracle Database 12c以上に接続する場合、ODP.NETは、Advanced Queuingではなく、Oracle Notification Serviceを使用します。
ODP.NETクライアントまたはアプリケーションを有効化して、FANロード・バランシング・アドバイザのイベントを受信するには、次の手順を実行します。
次の例に示すとおり、SRVCTLを使用してOracle Notification Serviceの通知を有効にし、実行時ロード・バランシングの目標を設定します。
$ srvctl modify service -db crm -service odpapp.example.com -notification TRUE -clbgoal LONG -rlbgoal SERVICE_TIME
Oracle Notification Service (ONS)をFANイベント(実行時ロード・バランシング・アドバイスなど)用に構成します。
ConnectionStringのロード・バランシング属性にTRUE
を設定して、ODP.NET接続プールでロード・バランシング・イベントを利用するように構成します(デフォルトはFALSE
)。この処理は、接続時に実行できます。この処理は、接続プールを使用している場合、またはプーリング属性がTRUE
(デフォルト)設定されている場合にのみ実行できます。
次の例では、ロード・バランシングが有効になるようにConnectionStringを構成する方法を示します。user_name
はユーザー名、password
はパスワードです。
con.ConnectionString = "User Id=user_name;Password=password;Data Source=odpapp;" + "Min Pool Size=10;Connection Lifetime=120;Connection Timeout=60;" + "Load Balancing=true;Incr Pool Size=5;Decr Pool Size=2";
注意:
ODP.NETでは、ノード起動時(UPイベント)の接続の再分散はサポートしていません。ただし、サーバー側でフェイルオーバーが有効になっている場合は、ODP.NETで、新しく使用可能になったインスタンスに接続を移行できます。
関連項目:
ODPの詳細は、『Oracle Data Provider for .NET開発者ガイドfor Microsoft Windows』を参照してください。NET
このコマンドの使用の詳細は、「srvctl modify service」
を参照してください