Oracle DatabaseでWebLogic Serverデータ・ソースを使用する方法については、次の各項を参照してください。
WebLogic Server、11gおよび12cのJDBCドライバ、およびOracle Databaseの11gおよび12.1バージョンの様々な組合せでサポートされているOracleデータベースの機能について学習します。
表12-1 Oracle Database 12.1の機能サポート
機能 | WebLogic Server 10.3.6/12.1.xと、11gドライバおよびOracle Database 11gR2 | WebLogic Server 10.3.6/12.1.xと、11gドライバおよびOracle Database 12c | WebLogic Server 10.3.6/12.1.1と、12cドライバおよびOracle Database 11gR2 | WebLogic Server 12.1.2以降と、12cドライバおよびOracle Database 11gR2 | WebLogic Server 10.3.6/12.1.1と、12cドライバおよびOracle Database 12c | WebLogic Server 12.1.2以降と、12cドライバおよびOracle Database 12c |
---|---|---|---|---|---|---|
JDBCリプレイ(読取り/書込み) |
いいえ |
いいえ |
いいえ |
いいえ |
はい(Active GridLinkによる読取り/書込みのみ、XAトランザクションなし) |
はい(Active GridLinkおよび汎用データ・ソースによる読取り/書込み、XAトランザクションなし) |
プラガブル・データベース(PDB) |
いいえ |
はい( |
いいえ |
いいえ |
はい |
はい |
PDBの動的切替え |
いいえ |
いいえ |
いいえ |
いいえ |
いいえ |
はい(XAなし) |
データベース常駐接続プーリング(DRCP) |
いいえ |
いいえ |
いいえ |
はい |
いいえ |
はい |
Oracle Notification Service (ONS)の自動構成 |
いいえ |
いいえ |
いいえ |
いいえ |
いいえ |
はい(Active GridLinkのみ) |
Global Database Services (GDS) |
いいえ |
はい(Active GridLinkのみ) |
いいえ |
いいえ |
はい(Active GridLinkのみ) |
はい(Active GridLinkのみ) |
JDBC 4.1 (ojdbc7.jarファイルおよびJDK 7を使用) |
いいえ |
いいえ |
はい |
はい |
はい |
はい |
次の各項では、Oracle Database 12.1のWebLogic JDBC機能について説明します。
WebLogic Serverは、JDK 7の使用環境でJDBC 4.1仕様をサポートしており、JDBCドライバはJDBC 4.1準拠です。新しいJDBC 4.1のメソッドを使用する場合は、ojdbc7.jar
を使用する必要があります。http://download.oracle.com/otndocs/jcp/jdbc-4_1-mrel-spec/index.html
でJDBC(tm) 4.1仕様を参照してください。
ノート:
Java SE 7のgetParentLogger
メソッドの使用に必要なjava.sql.driver
インタフェースは、現時点ではサポートされていません。http://docs.oracle.com/javase/7/docs/api/index.html?java/sql/Driver.htmlを参照してください。
JDK 7では、http://jcp.org/aboutJava/communityprocess/maintenance/jsr114/114MR2approved.pdfで定義されたRowset 1.1の軽度の変更もサポートしています。新規RowSetFactory
のWebLogic Serverへの実装をweblogic.jdbc.rowset.JdbcRowSetFactory
といいます。
Oracle WebLogic Server Continuous Availabilityは、地理的に分散した場所にデータ・センターを展開する最大可用性アーキテクチャ(MAA)を構築するための統合ソリューションを提供します。この統合ソリューションの大きな利点は、フェイルオーバーまたはスイッチオーバーの高速化、全体的なアプリケーション可用性の増大、データの整合性、ヒューマン・エラーおよびリスクの低減、作業のリカバリおよびリアルタイム・データのローカル・アクセスです。「アプリケーション・コンティニュイティ」を参照してください。
データベース常駐接続プーリング(DRCP)はOracleデータベース・サーバーの機能で、これにより中間層システムをまたぐ可能性のある複数の接続プール間の接続を共有できます。「データベース常駐接続プーリング」を参照してください
コンテナ・データベース(CDB)はOracleデータベース機能の1つであり、多数のデータベースを、単一CDBに含まれる複数のプラガブル・データベース(PDB)を使用して単一データベースに統合することにより、多数のデータベースを持つ場合のオーバーヘッドを最小限に抑えます。プラガブル・データベースを使用するコンテナ・データベースを参照してください
Global Database Services (GDS)はOracle Databaseの機能の1つであり、ロード・バランシングの自動化、フォルト・トレランス、および分散データベース環境でのリソース使用率を提供します。「Global Database Services」を参照してください
WebLogic Serverリリース12.1.2以降でOracle Database 12cを使用している場合は、Active GridLinkデータ・ソース構成の一部としてONSリスナーのリストを指定する必要はありません。ONSリストはデータベースからドライバに自動的に提供されます。「FANイベントの有効化」を参照してください
WebLogic JDBCには、特にOracle Database 12.2.xを使用する必要のあるいくつかの機能があります。WebLogic ServerのリリースとOracle Database 12.2.xリリースの様々な組合せでサポートされる機能について学習します。
表12-2 Oracle Database 12.2の機能サポート
機能 | 説明 | 導入されたWebLogic Server | データベース・リリース |
---|---|---|---|
JDBC 4.2 |
「JDBC 4.2インタフェース」を参照 | 12.1.3 |
12.1.0.1 |
サービスの切替え |
「サービスの切替え」を参照 | 12.2.1 |
12.2 |
XAリプレイ・ドライバ |
「Database 12.2 XAリプレイ・ドライバ」を参照 | 12.2.1 |
12.2 |
UCP MT共有プールのサポート |
「UCP MT共有プールのサポート」を参照 | 12.2.1.1.0 |
12.2 |
段階的排出 |
計画されたメンテナンスの間、すべての接続を即時にクローズするのではなく、接続を段階的に排出します。これは、アプリケーションのパフォーマンスが不均一になることを防ぎます。「段階的排出」を参照 | 12.2.1.2.0 |
12.1の12.2での拡張 |
AGLでの@aliasまたは@ldapを含むURLのサポート |
「AGLでの@aliasまたは@ldapを含むURLのサポート」を参照 | 12.2.1.2.0 |
12.2 |
データ・ソースの共有プール |
共有プール機能により、複数のデータ・ソース定義で基になる接続プールを共有する機能が提供されます。「共有プールのデータ・ソースの使用」を参照 | 12.2.1.3.0 |
12.2 |
トランザクション・ガードの統合 |
トランザクション・ガードは、計画済および計画外の停止中の、重複する発行を最大1回の実行に抑えるためにアプリケーションで使用される汎用インフラストラクチャを提供します。『Oracle WebLogic Server JTAアプリケーションの開発』の「トランザクション・ガードの使用」を参照してください。 | 12.2.1.3.0 |
12.1.0.2 |
JDBC 4.2インタフェース
JDK 8にはJDBC 4.2用の新しいAPIがあり、JDBC 4.2準拠のデータベース・ドライバでサポートされます。JDK 8とJDBC 4.2をサポートする最初のOracleドライバは12.2.0.1です
JDBC 4.2のjava.sqlおよびjavax.sqlで導入された機能を次に示します
JDBCType列挙とSQLTypeインタフェースの追加
CallableStatementでのREF CURSORのサポート
LOBの最大論理サイズとREF CURSORのサポートの有無を返すDatabaseMetaDataメソッド
大きい更新カウントのサポートの追加
JDBC 4.2 APIの変更点は、https://docs.oracle.com/javase/8/docs/technotes/guides/jdbc/jdbc_42.htmlに記載されています
Database 12.2 XAリプレイ・ドライバ
XAリプレイ・ドライバはOracle Database 12.2の新機能です。その名前はoracle.jdbc.replay.OracleXADataSourceImpl
です。12.2より前のドライバでWebLogic Serverを実行すると、クラスをロードできないことを示すエラーがスローされます。データ・ソースがデータベース12.2以降のXAリプレイ・ドライバで実行されている場合、テストの表名は次のように検証されます。
SQL ISVALID
またはSQL PINGDATABASE
の場合、変更はありません。
表名(tablenameからselect count(*)に変換される)またはSQL SELECTが指定されている場合は、SQL ISVALID
に変換されます。
他の値(DMLまたはDDL)を指定すると、例外がスローされ、データ・ソースはデプロイされません。
ノート:
12.2 XAリプレイ・ドライバは、グローバル・トランザクションの再生はサポートしておらず、XA接続上のローカル・トランザクションをサポートしています。AGLでの@aliasまたは@ldapを含むURLのサポート
この機能を使用すると、AGLのURLで別名またはLDAP接続を使用できます。別名の形式はjdbc:oracle:thin:/@alias
で、この「alias」はtnsnames.ora
ファイルで定義されている別名です。
詳細は、「LDAPの構文」を参照してください。
別名を使用するには、次のステップを実行する必要があります。
システム・プロパティのDoracle.net.tns_admin=tns_directory
を指定し、このtns_directory
は、tnsnames.ora
ファイルのディレクトリの場所です。
tns_directory
で指定されているディレクトリ内にtnsnames.ora
ファイルを作成します。または、このファイルを変更します。
エントリの形式: alias=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host)(PORT=port))(CONNECT_DATA=(SERVICE_NAME=service)))
接続文字列を別名に置き換えることで、データ・ソース定義URLで別名を使用します。
たとえば、管理コンソールの「接続プール」タブでURL属性をjdbc:oracle:thin:/@alias
に変更します。