Oracle Database Cloud Service

Oracle Database Cloud Service(Oracle DBCS)におけるJavaアプリケーションとIDEの使用

Oracle JDBCおよびUniversal Connection Pool(UCP)を使用し、Java SEアプリケーション、Java Webアプリケーション(Servlets)およびJava EEコンテナからOracle Database Cloud Serviceにアクセスします。以下の手順を使用して接続します。

1.Oracle Cloudにデータベース・インスタンスを作成します。

  • データベース・インスタンスを作成済みの場合は、この手順を省略できます。作成済みでない場合は、以下の手順に従ってデータベース・インスタンスを新たに作成します。
  • Oracle Cloudにサインアップしたら、自身のアカウントでログインします(http://cloud.oracle.com)。Dashboard上の「Create Instance」ボタンを探します。このボタンをクリックし、データベース・インスタンスを作成する手順を実行します。
  • Dashboardの「Database」を選択し、すべてのデータベース・サービスを表示するOpen Service Consoleを使用してデータベース・インスタンスを作成する方法もあります。「Create Service」ボタンをクリックして、新しいインスタンスを作成します。図1:Oracle Database Service Console
  • データベース・インスタンスが作成されたら、そのインスタンスをクリックすることでデータベースの詳細を取得できます。たとえば、図1:Oracle Database Service Consoleの"dev"をクリックします。
    • データベース・インスタンスの詳細情報から、HOSTやIPアドレスを確認できます。
    • SERVICE_NAMEは、詳細情報セクションにも表示されています。データベース・サービス名の書式は、pdb.identity-domain.oraclecloud.internalです。

2.ポート1521のブロックを解除します。

  • Oracle Database Cloud Serviceは、標準のOracle Net Listenerポート(1521)でのOracle Databaseへのアクセスをサポートします。データベース・インスタンスを最初に作成した時点では、ネットワーク・セキュリティを確実にするためOracle Net Listenerポート(1521)はブロックされています。"Access Rules"(図1:Oracle Database Service Console)を選択してこのポートのブロックを解除し、1521を選択し、SQL*Netがこのポートを使用できるようにします。

Oracle Database Service Console

図1:Oracle Database Service Console

3.Simple Java Applicationのコンパイルと実行

  • 12.2.0.1 JDBCシン・ドライバ(ojdbc8.jar)と12.2.0.1 UCP(ucp.jar 、または12.1.0.2 JDBCシン・ドライバ(ojdbc7.jar)と12.1.0.2 UCP(ucp.jarを所定の位置にダウンロードし、その場所をクラスパスに追加します。
  •  下記を参照し、環境に応じた接続文字列を設定します。たとえば、デフォルトで利用可能なHRスキーマを使用することができます。
    例:
    DB_USER = "hr" or
    DB_PASSWORD = "hr" or
    DB_URL = "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(HOST=)(PORT=1521)(PROTOCOL=tcp))(CONNECT_DATA=(SERVICE_NAME=PDB1..oraclecloud.internal)))";
  • Javaアプリケーションをコンパイルし、実行します。
  • [Windows]java -cp .\lib\ojdbc7.jar;.\lib\ucp.jar UCPSample
  • トラブルシューティング・ヒント:データベース・インスタンスが最初に作成された時点では、セキュリティ上の理由からHRユーザーはロックされているので、"account locked"のエラーが表示されます。そのため、HRユーザーをデータベースへの接続に使用する前に、以下の手順を実行してHRユーザーのロックを解除します。
    • データベースのコンピュート・ノードに対してSSHを実行します。
    • コンピュート・ノードに"oracle"でログインします。
    • システムユーザーとしてデータベースに接続( sqlplus sys as sysdba )し、インスタンスの作成時に選択したパスワードを入力します。
    • PDBを使用するようセッションを変更します。 alter session set container=pdb1;
    • ユーザー"hr"のロックを解除します( alter user hr identified by hr account unlock;)。

4.SSHトンネルの使用によるコンピュート・ノードへの接続

SSHトンネルを通して、データベース・インスタンスが実行されているコンピュート・ノードに接続できます。「Creating an SSH Tunnel to a Compute Node Port」に示す手順に従って接続します。接続後は、データベースにアクセスしたり、新規ユーザーの作成やデータベース・ユーザー・パスワードの変更を行ったりできます。

データベース・クラウド・サービスに関するリソース

ヘルプセンター | ユーザーガイド | 最新情報 | トラブルシューティング・ヒント - マニュアル

他の開発者向けリソース

JDBC and UCP Landing Page - ホワイトペーパー、Javadoc、フォーラム他