自律型AIデータベースでのOracle Javaの使用
Autonomous AI Databaseは、Oracle JVMをサポートしています。Oracle JVMは、Pure Javaアプリケーションを実行する標準的なJava互換環境である。
Oracle JVMには、標準のJLSおよびJVM仕様との互換性があります。標準のJavaバイナリ形式および標準Java APIをサポートしています。また、Oracle AI Databaseは、実行時の動的クラス・ロードなど、標準のJava言語セマンティクスに準拠します。
Oracle Javaの詳細は、「Oracle AI DatabaseでのJavaの使用について」を参照してください。
Oracle Javaの有効化
DBMS_CLOUD_ADMIN.ENABLE_FEATUREを使用して、Autonomous AI DatabaseでOracle Javaを有効にします。
-
DBMS_CLOUD_ADMIN.ENABLE_FEATUREを実行します。BEGIN DBMS_CLOUD_ADMIN.ENABLE_FEATURE( feature_name => 'JAVAVM' ); END; /これにより、Autonomous AI DatabaseインスタンスにOracle Javaをインストールするリクエストが開始されます。
詳細は、ENABLE_FEATUREプロシージャを参照してください。
-
Autonomous AI Databaseインスタンスを再起動します。
詳細は、「Autonomous AI Databaseの再起動」を参照してください。
Autonomous AI Databaseインスタンスを再起動すると、データベースの起動後しばらくの間Javaインストールが続行されます。Oracle JVMが有効でインストールが完了していることを確認するには、「Oracle Javaバージョンの確認」を参照してください。
Oracle Javaバージョンの確認
Autonomous AI DatabaseインスタンスのOracle Javaの詳細は、Oracle Javaバージョンおよびコンポーネント・レジストリで確認できます。
-
Oracle Javaのコンポーネント・レジストリのステータスおよびバージョンを確認します。
SELECT status, version FROM DBA_REGISTRY WHERE comp_id = 'JAVAVM'; STATUS VERSION ------ ---------- VALID 19.0.0.0.0Oracle Javaがインストールされていない場合、この問合せでは行が表示されません。
Oracle Javaがロードされている場合、この問合せはステータス
LOADINGを表示します。次に例を示します。STATUS VERSION ------- ------- LOADING null -
Oracle Java JDKのバージョンを確認します。
SELECT dbms_java.get_jdk_version FROM DUAL; GET_JDK_VERSION --------------- 1.8.0_411Oracle Javaがインストールされていない場合、この問合せはエラー・メッセージを表示します。
Autonomous AI DatabaseへのJavaクラスおよびJARファイルのロード
クライアント側のloadjavaオプションを使用して、Autonomous AI Databaseインスタンス上のOracle JVMにJavaクラスおよびJARファイルをロードできます。
クライアント側の loadjavaオプションは、次のようにサポートされます。
-
JDKによってJARファイルが開きます。
-
クライアント側は、Autonomous AI Databaseとの通信チャネルを開きます。
-
Javaコードは、ロードのためにAutonomous AI Databaseで実行されているOracle JVMに送信されます。
このプロセスは、SQLコードから動的Javaストアド・プロシージャを作成するのと似ていますが、ファイル・アクセスは行われませんが、コードが作成されます。
次の点に注意してください。
-
ロードするJavaコードは、オペレーティング・システムまたはネットワーク・コールを起動できません。
-
サーバー側の
loadjava(プロシージャdbms_java.loadjavaのコール)の使用はサポートされていません。プロシージャdbms_java.loadjavaは、Oracle JVMが実行されているデータベース・サーバーのファイル・システムにアクセスします。これはAutonomous AI Databaseでは許可されず、Javaアプリケーション内からのプロシージャdbms_java.loadjavaへのコールはサポートされていません。
Autonomous AI Database上のOracle Javaに関するノート
Autonomous AI DatabaseでOracle Javaを使用するためのノートを提供します。
-
Oracle Javaは、Autonomous AI Databaseインスタンスで有効にした後は無効にできません。
-
Autonomous AI Databaseは、通常のAutonomous AI Databaseメンテナンス・ウィンドウ中に、必要に応じてOracle Javaパッチ適用を実行します。
Oracle Javaのパッチ適用中は、Javaを使用できず、次のようなエラーが発生する可能性があります。
ERROR at line 1: ORA-29548: Java system class reported: release of Java system classes in the database (19.0.0.0.220118 1.8) does not match that of the oracle executable (19.0.0.0.220419 1.8).メンテナンス・ウィンドウ中に、Javaパッチ適用フェーズがアクティブな場合、Javaセッション・コールに対するレスポンスがないか、
ORA-29548エラーが表示されます。メンテナンス・ウィンドウが完了すると、Javaの使用状況がリストアされます。イベント
NewMaintenanceScheduleおよびScheduledMaintenanceWarningを使用して、Oracle Javaパッチ適用を通知できます。詳細は、Autonomous AI Databaseの情報イベントを参照してください。詳細は、スケジュール済メンテナンスおよびパッチ適用についてを参照してください。