ビルド・ツールを使用しないJDBCを使用したOracle Databaseへの接続

Oracle Autonomous Databaseへの接続は、ビルド・ツールなしで手動で確立できます。

前提条件

次の項では、Oracle JDBCドライバおよびユニバーサル接続プールを使用してJavaアプリケーションをOracle Autonomous Databaseに接続する前に実行する必要があるタスクについて説明します。Autonomous Exadata VMクラスタ(AVMC)のプロビジョニング時に選択した認証タイプに応じて、適切な前提条件を参照してください。デフォルトでは、AVMCをプロビジョニングすると一方向TLS接続が有効になります。詳細は、Autonomous Exadata VMクラスタの作成を参照してください。

認証タイプは、AVMCの「詳細」ページで確認できます。手順については、Autonomous Exadata VMクラスタの詳細の表示を参照してください。

Oracle Autonomous Databaseインスタンスのプロビジョニング

Oracle Autonomous Databaseにアクセスする必要があります。まだプロビジョニングしていない場合は、専用Exadataインフラストラクチャ上のAutonomous Databaseを開始する前にを参照してください。

ADMINユーザーに使用したパスワードを覚えておいてください。デモンストレーションの目的では、ADMINユーザーを使用しますが、Oracle SQL Developerまたはデータベース・アクションを使用して他のデータベース・ユーザーを作成することをお薦めします。

JDK 8をインストール

最新のJDK 8またはより高いJDKバージョンをダウンロードします。

ノート:

JDK8u162以降のバージョンを使用していることを確認してください。java -versionを使用して、インストールしたJDKバージョンを確認します。JDBCドライバのバージョンを確認するには、java -jar ojdbc8.jarと入力します。

Githubからサンプルプログラムをダウンロード

  1. GithubからADBQuickStart.javaファイルをダウンロードします。このサンプル・アプリケーションは、Sales History (SH)サンプル・スキーマを使用し、SH.CUSTOMERS表の20個のレコードを表示します。
  2. ADBQuickStart.javaファイルを変更して、Oracle Autonomous Databaseの接続情報を含めます。
    • DB_USER: You can use ADMIN, the user created by default when the Oracle Autonomous Database is created (if you create another OracleAutonomous Database user, you can use that user instead).
    • DB_PASSWORD: データベース・ユーザーのパスワードを使用します。If connecting as the ADMIN user, set this to the password you chose during the Create Autonomous Database step while provisioning Oracle Autonomous Database.セキュリティ上の理由から、サンプルを実行するときにコンソールからパスワードを入力する必要があります。
    • DB_URL: Autonomous Databaseの接続文字列を取得するには、Autonomous Databaseの接続文字列の表示の手順に従います。Javaプログラムで直接使用している場合は、接続文字列の"を\"でエスケープする必要があります

    サンプル・クイック・スタートJavaファイルは次のようになります。

    DB_URL = "jdbc:oracle:thin:@jdbc:oracle:thin:@(description=
          (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1521)(host=adb.us-sanjose-1.oraclecloud.com))(connect_data=(service_name=g13ec47eade81f7_demodb_low.adb.oraclecloud.com))(security=(ssl_server_cert_dn=\"CN=adb.us-sanjose-1.oraclecloud.com,
          OU=Oracle ADB SANJOSE, O=Oracle Corporation, L=Redwood City, ST=California,
          C=US\")))"
    DB_USER="ADMIN" and DB_PASSWORD="your_password"
  3. ADBQuickStart.javaファイルに対する変更を保存します。

トラブルシューティングおよびデバッグ: エラーが発生した場合は、「トラブルシューティングのヒント」ページで役立つヒントを参照してください。

Oracle Autonomous Databaseインスタンスのプロビジョニング

Oracle Autonomous Databaseにアクセスする必要があります。まだプロビジョニングしていない場合は、専用Exadataインフラストラクチャ上のAutonomous Databaseを開始する前にを参照してください。

ADMINユーザーに使用したパスワードを覚えておいてください。デモンストレーションの目的では、ADMINユーザーを使用しますが、Oracle SQL Developerまたはデータベース・アクションを使用して他のデータベース・ユーザーを作成することをお薦めします。

クライアント資格証明の取得

  1. Autonomous Databaseインスタンスからウォレット・ファイルをダウンロードして、Autonomous Databaseインスタンスにアクセスするために必要なクライアント・セキュリティ資格証明およびネットワーク構成設定を含むzipファイルを取得します。

    クライアント・セキュリティ資格証明(wallet.zipファイル)を取得します:

    • ADMINユーザー: Oracle Cloud Infrastructure Consoleで、「データベース接続」をクリックします。クライアント資格証明のダウンロードを参照してください。
    • 他のユーザー(非管理者): Autonomous Databaseインスタンスの管理者からOracle Walletを取得します。

    ノート:

    不正なデータベース・アクセスを防ぐために、wallet.zipファイルとそのコンテンツを保護します。
  2. クライアント資格証明ファイル(wallet.zip)を解凍します。

JDK 8をインストール

最新のJDK 8またはより高いJDKバージョンをダウンロードします。

ノート:

JDK8u162以降のバージョンを使用していることを確認してください。java -versionを使用して、インストールしたJDKバージョンを確認します。JDBCドライバのバージョンを確認するには、java -jar ojdbc8.jarと入力します。

Githubからサンプルプログラムをダウンロード

  1. GithubからADBQuickStart.javaファイルをダウンロードします。このサンプル・アプリケーションは、Sales History (SH)サンプル・スキーマを使用し、SH.CUSTOMERS表の20個のレコードを表示します。
  2. ADBQuickStart.javaファイルを変更して、Oracle Autonomous Databaseの接続情報を含めます。
    • DB_USER: You can use ADMIN, the user created by default when the Oracle Autonomous Database is created (if you create another OracleAutonomous Database user, you can use that user instead).
    • DB_PASSWORD: データベース・ユーザーのパスワードを使用します。If connecting as the ADMIN user, set this to the password you chose during the Create Autonomous Database step while provisioning Oracle Autonomous Database.セキュリティ上の理由から、サンプルを実行するときにコンソールからパスワードを入力する必要があります。
    • DB_URL: ネット・サービス名(TNS別名)DBName_mediumを入力します。DBNameは、Oracle Autonomous Databaseのプロビジョニング中に「Autonomous Databaseの作成」ステップで入力したOracle Autonomous Database名です。使用可能なネット・サービス名は、クライアント資格証明zipファイルの一部であるtnsnames.oraファイルで確認できます。

      TNS_ADMINは、Oracle Autonomous Databaseのクライアント資格証明を解凍した場所を指す必要があります。

    サンプル・クイック・スタートJavaファイルは次のようになります。

    DB_URL = "jdbc:oracle:thin:@DBName_medium?TNS_ADMIN=/Users/test/wallet_DBName" DB_USER="ADMIN" and DB_PASSWORD="enter_it_from_console"
  3. ADBQuickStart.javaファイルに対する変更を保存します。

手順

  1. OTNからthe19cバージョンのojdbc8-full.tar.gzをダウンロードし、内容をクラスパスに解凍します。

    ノート:

    ojdbc8-full.tar.gzには、最新のJDBCドライバojdbc8.jar、ucp.jar (クライアント側接続プールとしてUCPを使用するために必要なJAR)、oraclepki.jarosdt_core.jarosdt_cert.jarが含まれます。Oracle Autonomous Databaseへの接続中にOracleウォレットを使用するには、これらのJARが必要です。
  2. Javaプログラムをコンパイルします。クラスパス内の必要なJARに正しいパスを指定してください:
    javac -classpath ./lib/ojdbc8.jar:./lib/ucp.jar:/lib/oraclepki.jar:./lib/osdt_core.jar:./lib/osdt_cert.jar com/oracle/jdbctest/ADBQuickStart.java
  3. サンプルJavaプログラムを実行します。クラスパス内の必要なJARに正しいパスを指定してください:
    java -classpath ./lib/ojdbc8.jar:./lib/ucp.jar:/lib/oraclepki.jar:./lib/osdt_core.jar:./lib/osdt_cert.jar:. com.oracle.jdbctest.ADBQuickStart

    サンプル出力:

    次の画面に示すように、問合せされた行が成功メッセージとともに表示されます。



ノート:

ファイアウォールの内側からOracle Autonomous Databaseに接続すると、接続タイムアウト・エラーが発生する可能性があります。このサンプルの実行中にファイアウォールの外側にいることを確認するか、HTTPSプロキシを使用するようにtnsnames.oraファイルを更新してください。