Oracle Java in Autonomous Database verwenden

Autonomous Database unterstützt Oracle JVM. Oracle JVM ist eine Java-kompatible Standardumgebung, in der reine Java-Anwendungen ausgeführt werden können.

Oracle JVM ist mit den JLS- und JVM-Standardspezifikationen kompatibel. Es unterstützt das standardmäßige Java-Binärformat und die standardmäßigen Java-APIs. Darüber hinaus entspricht Oracle Database der standardmäßigen Java-Sprache, einschließlich dem dynamischen Laden von Klassen zur Laufzeit.

Informationen zu Oracle Java in Oracle Database finden Sie unter Java in Oracle Database verwenden.

Oracle Java aktivieren

Verwenden Sie DBMS_CLOUD_ADMIN.ENABLE_FEATURE, um Oracle Java in Autonomous Database zu aktivieren.

  1. Führen Sie DBMS_CLOUD_ADMIN.ENABLE_FEATURE aus.
    BEGIN
       DBMS_CLOUD_ADMIN.ENABLE_FEATURE(
           feature_name => 'JAVAVM' );
    END;
    /

    Dadurch wird die Anforderung zum Installieren von Oracle Java in der Autonomous Database-Instanz initiiert.

    Weitere Informationen finden Sie unter Prozedur ENABLE_FEATURE.

  2. Starten Sie die Autonomous Database-Instanz neu.

    Weitere Informationen finden Sie unter Autonomous Database neu starten.

Nachdem Sie die Autonomous Database-Instanz neu gestartet haben, wird die Java-Installation nach dem Start der Datenbank einige Zeit fortgesetzt. Prüfen Sie unter Oracle Java-Version prüfen, ob Oracle JVM aktiviert und die Installation abgeschlossen ist.

Oracle Java-Version prüfen

Sie können die Oracle Java-Version und die Komponentenregistrierung auf Informationen zu Oracle Java in der Autonomous Database-Instanz prüfen.

  1. Prüfen Sie den Registry-Status und die Version der Komponente für Oracle Java.
    SELECT status, version FROM DBA_REGISTRY
       WHERE comp_id = 'JAVAVM';
    
    STATUS VERSION
    ------ ---------- 
    VALID  19.0.0.0.0 

    Wenn Oracle Java nicht installiert ist, zeigt diese Abfrage keine Zeilen an.

    Wenn Oracle Java diese Abfrage lädt, wird der Status LOADING angezeigt. Beispiele:

    STATUS  VERSION 
    ------- ------- 
    LOADING null    
  2. Prüfen Sie die Oracle Java JDK-Version.
    SELECT dbms_java.get_jdk_version FROM DUAL;
    
    GET_JDK_VERSION 
    --------------- 
    1.8.0_411       

    Wenn Oracle Java nicht installiert ist, zeigt diese Abfrage eine Fehlermeldung an.

Java-Klassen und JAR-Dateien in Autonomous Database laden

Mit der clientseitigen Option loadjava können Sie Java-Klassen und JAR-Dateien in Oracle JVM auf einer Autonomous Database-Instanz laden.

Die clientseitige Option loadjava wird wie folgt unterstützt:

  1. Das JDK öffnet die JAR-Datei.
  2. Auf der Clientseite wird ein Kommunikationskanal mit Autonomous Database geöffnet.
  3. Der Java-Code wird zum Laden an die Oracle JVM weitergeleitet, die in Autonomous Database ausgeführt wird.

Dieser Prozess ähnelt dem Erstellen einer dynamischen gespeicherten Java-Prozedur aus SQL-Code, bei der kein Dateizugriff erforderlich ist, der Code jedoch erstellt wird.

Hinweis:

  • Der geladene Java-Code kann keine Betriebssystem- oder Netzwerkaufrufe aufrufen.

  • Die Verwendung von serverseitigem loadjava, d.h. Aufrufen der Prozedur dbms_java.loadjava, wird nicht unterstützt. Die Prozedur dbms_java.loadjava greift auf das Dateisystem des Datenbankservers zu, auf dem die Oracle JVM ausgeführt wird. Dies ist in Autonomous Database nicht zulässig, und Aufrufe der Prozedur dbms_java.loadjava aus Ihrer Java-Anwendung werden nicht unterstützt.

Hinweise zu Oracle Java in Autonomous Database

Enthält Hinweise zur Verwendung von Oracle Java in Autonomous Database.

  • Sie können Oracle Java nicht deaktivieren, nachdem es in der Autonomous Database-Instanz aktiviert wurde.

  • Autonomous Database führt das Oracle Java-Patching nach Bedarf während des regulären Autonomous Database- Wartungsfensters aus.

    Beim Oracle Java-Patching ist Java nicht verfügbar, und Benutzer erhalten möglicherweise eine Fehler wie die folgende:

    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).

    Wenn die Java-Patching-Phase während des Wartungsfensters aktiv ist, erhalten Sie keine Antwort auf Java-Sessionaufrufe. Andernfalls wird der Fehler ORA-29548 angezeigt. Nach dem Ende des Wartungsfensters wird die Java-Verwendung wiederhergestellt.

    Mit den Ereignissen NewMaintenanceSchedule und ScheduledMaintenanceWarning können Sie über das Oracle Java-Patching benachrichtigt werden. Weitere Informationen finden Sie unter Informationsereignisse in Autonomous Database.

    Weitere Informationen finden Sie unter Geplante Wartung und Patches.