Oracle Java 虛擬機器 - Amazon Relational Database Service

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

Oracle Java 虛擬機器

Amazon RDS 會使用 JVM 選項,藉此支援 Oracle Java 虛擬機器 (JVM)。Oracle Java 提供 SQL 結構描述和函數,可加速 Oracle 資料庫的 Oracle Java 功能。如需詳細資訊,請參閱 Oracle 文件中的 Oracle 資料庫中的 Java 簡介

您可以對下列 Oracle 資料庫版本使用 Oracle JVM:

  • Oracle Database 21c (21.0.0),所有版本

  • Oracle Database 19c (19.0.0),所有版本

  • Oracle 資料庫 12c 版本 2 (12.2),所有版本

  • Oracle Database 12c 版本 1 (12.1),12.1.0.2.v13 版本及更高版本

Amazon RDS 中的 Java 實作擁有有限的一組許可。主要使用者已授予 RDS_JAVA_ADMIN 角色,可授予由 JAVA_ADMIN 角色授予的權限子集。如要列出授予給 RDS_JAVA_ADMIN 角色的權限,請在您的資料庫執行個體上執行以下查詢:

SELECT * FROM dba_java_policy WHERE grantee IN ('RDS_JAVA_ADMIN', 'PUBLIC') AND enabled = 'ENABLED' ORDER BY type_name, name, grantee;

Oracle JVM 的先決條件

下列是使用 Oracle Java 的先決條件:

  • 您的資料庫執行個體必須具有夠大的類別。Oracle Java 不支援 db.t3.micro 或 db.t3.small 資料庫執行個體類別。如需更多詳細資訊,請參閱 資料庫執行個體類別

  • 您的資料庫執行個體必須將自動次要版本升級啟用。此選項可讓資料庫執行個體自動接收可用的次要資料庫引擎版本升級。Amazon RDS 使用此選項將您的資料庫執行個體更新為最新版 Oracle 修補程式集更新 (PSU) 或版本更新 (RU)。如需更多詳細資訊,請參閱 修改 Amazon RDS 資料庫執行個體

Oracle JVM 的最佳實務

下列是使用 Oracle Java 的最佳實務:

  • 為了將安全性提升至最高,請使用 JVM 選項搭配 Secure Sockets Layer (SSL)。如需更多詳細資訊,請參閱 Oracle Secure Sockets Layer

  • 設定資料庫執行個體以限制網路存取。如需更多詳細資訊,請參閱 在 VPC 中存取資料庫執行個體的案例在 VPC 中使用資料庫執行個體

  • 如果您符合下列條件,請更新 HTTPS 端點的組態以支援 TLSv1.2:

    • 您可以使用 Oracle Java 虛擬機器 (JVM) 透過 TLSv1 或 TLSv1.1 通訊協定來連線 HTTPS 端點。

    • 您的端點不支援 TLSv1.2 通訊協定。

    • 您尚未將 2021 年 4 月版本更新套用至您的 Oracle 資料庫。

    透過更新端點組態,您可以確保 JVM 與 HTTPS 端點的連線能夠繼續運作。如需 Oracle JRE 和 JDK 中 TLS 變更的詳細資訊,請參閱 Oracle JRE 和 JDK 密碼編譯藍圖

新增 Oracle JVM 選項

下列是將 JVM 選項新增至資料庫執行個體的一般程序:

  1. 建立新的選項群組,或是複製或修改現有選項群組。

  2. 將選項新增至選項群組。

  3. 將選項群組與資料庫執行個體建立關聯。

新增 JVM 選項時,會有短暫的停機。在您新增選項之後,就不需要重新啟動資料庫執行個體。只要選項群組為作用中,Oracle Java 就可使用。

注意

在中斷過程中,密碼驗證功能將會短暫停用。在中斷過程中,您也可以預期將會看到與密碼驗證功能相關的事件。在 Oracle 資料庫執行個體可用之前,密碼驗證功能將會再次啟用。

將 JVM 選項新增至資料庫執行個體
  1. 判斷要使用的選項群組。您可以建立新的選項群組或使用現有的選項群組。如果您要使用現有的選項群組,請跳到下一個步驟。否則請使用下列設定來建立自訂資料庫選項群組:

    • 對於 Engine (引擎),請選擇資料庫執行個體使用的資料庫引擎 (oracle-eeoracle-seoracle-se1oracle-se2)。

    • 針對 Major engine version (主要引擎版本),請選擇您資料庫執行個體的版本。

    如需更多詳細資訊,請參閱 建立選項群組

  2. JVM 選項新增至選項群組。如需新增選項的詳細資訊,請參閱將選項新增至選項群組

  3. 將選項群組套用至新的或現有的資料庫執行個體:

  4. 將所需的許可授予使用者。

    Amazon RDS 主要使用者預設有使用 JVM 選項的許可。如果其他使用者需要這些許可,請以主要使用者的身分連線到資料庫執行個體,並且將該許可授予使用者。

    下列範例將使用 JVM 選項的許可授予 test_proc 使用者。

    create user test_proc identified by password; CALL dbms_java.grant_permission('TEST_PROC', 'oracle.aurora.security.JServerPermission', 'LoadClassInPackage.*', '');
    注意

    指定此處所顯示提示以外的密碼,作為安全最佳實務。

    對使用者授予許可之後,下列查詢應該會傳回輸出。

    select * from dba_java_policy where grantee='TEST_PROC';
    注意

    Oracle使用者名稱會區分大小寫,且通常全部是大寫字元。

移除 Oracle JVM 選項

您可以從資料庫執行個體移除 JVM 選項。移除選項時,會有短暫的停機。移除 JVM 選項之後,就不需要重新啟動資料庫執行個體。

警告

如果資料庫執行個體使用的是做為選項一部分而啟用的資料類型,移除 JVM 選項可能會造成資料遺失。備份資料之後再繼續。如需更多詳細資訊,請參閱 備份、還原和匯出資料

若要從資料庫執行個體中移除 JVM 選項,請執行下列其中一個動作:

  • 從其所屬的選項群組中移除 JVM 選項。此變更會影響使用選項群組的所有資料庫執行個體。如需更多詳細資訊,請參閱 從選項群組移除選項

  • 修改資料庫執行個體,並指定不包括 JVM 選項的不同選項群組。此變更會影響單一資料庫執行個體。您可以指定預設的 (空白) 選項群組或不同的自訂選項群組。如需更多詳細資訊,請參閱 修改 Amazon RDS 資料庫執行個體