

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

# Oracle Spatial
<a name="Oracle.Options.Spatial"></a>

Amazon RDS 會使用 `SPATIAL` 選項，藉此支援 Oracle Spatial。Oracle Spatial 提供的 SQL 結構描述和函數，有助於 Oracle 資料庫中空間資料集合的儲存、擷取、更新和查詢。如需詳細資訊，請參閱 Oracle 文件中的 [Spatial 概念](http://docs.oracle.com/database/121/SPATL/spatial-concepts.htm#SPATL010)。Amazon RDS 在所有支援的版本中都支援 Oracle Spatial。

## 空間修補程式套件 (SPB) 的運作方式
<a name="Oracle.Options.Spatial.SPBs"></a>

RDS for Oracle 每季都會為每個支援的主要引擎發行新的次要引擎版本。版本更新 (RU) 引擎版本會包含指定季度的 RU 修補程式，藉此併入來自 Oracle 的錯誤修正。空間修補程式套件 (SPB) 引擎版本包含 RU 修補程式，以及 Oracle Spatial 專用的修補程式。例如，19.0.0.0.ru-2025-01.spb-1.r1 是一個次要引擎版本，其中包含引擎版本 19.0.0.0.ru-2025-01.rur-2025-01.r1 中的 RU 修補程式，以及 Spatial 修補程式。僅支援將 SPB 用於 Oracle Database 19c。

SPB 的運作方式與 RU 相同，雖然其名稱有所不同。RU 使用命名格式 19.0.0.0.ru-2025-01.rur-2025-01.r1。SPB 名稱包含 "spb" 一字，例如 19.0.0.0.ru-2025-01.spb-1.r1。一般而言，SPB 會在其對應的每季 RU 之後的 2-3 週發行。例如，19.0.0.0.ru-2025-01.spb-1.r1 會在 19.0.0.0.ru-2025-01.rur-2025-01.r1 之後發行。

RDS for Oracle 的 RU 和 SPB 自動次要版本升級採用不同的路徑。如果您的資料庫執行個體使用 RU，則 RDS 會自動將您的執行個體升級至 RU。如果您的資料庫執行個體使用 SPB，則 RDS 會將您的執行個體升級至 SPB。

如需 RU 和 SPB 的詳細資訊，請參閱 [Oracle 次要版本升級](USER_UpgradeDBInstance.Oracle.Minor.md)。如需 Oracle Database 19c 支援的 RU 和 SPB 清單，請參閱 *Amazon RDS for Oracle 版本備註*中的 [Amazon RDS for Oracle Database 19c (19.0.0.0)](https://docs.aws.amazon.com/AmazonRDS/latest/OracleReleaseNotes/oracle-version-19-0.html)。

## Oracle Spatial 的先決條件
<a name="Oracle.Options.Spatial.PreReqs"></a>

下列是使用 Oracle Spatial 的先決條件：
+ 確認您的資料庫執行個體有足夠的執行個體類別。db.t3.small 資料庫執行個體類別不支援 Oracle Spatial。如需詳細資訊，請參閱[RDS for Oracle 資料庫執行個體類別](Oracle.Concepts.InstanceClasses.md)。
+ 確認您的資料庫執行個體已啟用**自動次要版本升級**。此選項可讓資料庫執行個體自動接收可用的次要資料庫引擎版本升級，而且是安裝 Oracle Java Virtual Machine (JVM) 之任何選項的必要項目。Amazon RDS 使用此選項將您的資料庫執行個體更新為最新版 Oracle 修補程式集更新 (PSU) 或版本更新 (RU)。如需更多詳細資訊，請參閱 [修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

## Oracle Spatial 的最佳實務
<a name="Oracle.Options.Spatial.BestPractces"></a>

下列是使用 Oracle Spatial 的最佳實務：
+ 為了將安全性提升至最高，請使用 `SPATIAL` 選項搭配 Secure Sockets Layer (SSL)。如需更多詳細資訊，請參閱 [Oracle Secure Sockets Layer](Appendix.Oracle.Options.SSL.md)。
+ 設定資料庫執行個體以限制對資料庫執行個體的存取。如需更多詳細資訊，請參閱 [在 VPC 中存取資料庫執行個體的案例](USER_VPC.Scenarios.md) 及 [在 VPC 中使用資料庫執行個體](USER_VPC.WorkingWithRDSInstanceinaVPC.md)。

## 新增 Oracle Spatial 選項
<a name="Oracle.Options.Spatial.Add"></a>

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

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

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

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

如果 Oracle Java Virtual Machine (JVM) *未*安裝在資料庫執行個體上，則在新增 `SPATIAL` 選項時，會發生短暫當機現象。如果已經在資料庫執行個體上安裝 Oracle Java Virtual Machine (JVM)，則不會發生停機現象。在您新增選項之後，就不需要重新啟動資料庫執行個體。只要選項群組為作用中，Oracle Spatial 就會可用。

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

**將 `SPATIAL` 選項新增至資料庫執行個體**

1. 判斷要使用的選項群組。您可以建立新的選項群組或使用現有的選項群組。如果您要使用現有的選項群組，請跳到下一個步驟。否則請使用下列設定來建立自訂資料庫選項群組：

   1. 針對 **Engine (引擎)**，選擇適用於資料庫執行個體的 Oracle 版本。

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

   如需更多詳細資訊，請參閱 [建立選項群組](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.Create)。

1. 將 **SPATIAL** 選項新增至選項群組。如需新增選項的詳細資訊，請參閱[將選項新增至選項群組](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.AddOption)。

1. 將選項群組套用至新的或現有的資料庫執行個體：
   + 針對新的資料庫執行個體，您會在啟動執行個體時套用選項群組。如需更多詳細資訊，請參閱 [建立 Amazon RDS 資料庫執行個體](USER_CreateDBInstance.md)。
   + 針對現有的資料庫執行個體，您可以透過修改執行個體並附加新的選項群組來套用選項群組。如需更多詳細資訊，請參閱 [修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。

## 移除 Oracle Spatial 選項
<a name="Oracle.Options.Spatial.Remove"></a>

捨棄使用 `SPATIAL` 選項所提供之資料類型的所有物件之後，您可以將該選項從資料庫執行個體捨棄。如果 Oracle Java Virtual Machine (JVM) *未*安裝在資料庫執行個體上，則在移除 `SPATIAL` 選項時，會發生短暫當機現象。如果已經在資料庫執行個體上安裝 Oracle Java Virtual Machine (JVM)，則不會發生停機現象。移除 `SPATIAL` 選項之後，就不需要重新啟動資料庫執行個體。

**捨棄 `SPATIAL` 選項**

1. 備份您的資料。
**警告**  
如果執行個體使用已啟用做為選項一部分的資料類型，而且如果您移除該 `SPATIAL` 選項，則可能會遺失資料。如需更多詳細資訊，請參閱 [備份、還原和匯出資料](CHAP_CommonTasks.BackupRestore.md)。

1. 檢查是否有任何現有物件參考資料類型或 `SPATIAL` 選項的功能。

   如果 `SPATIAL` 選項存在，則在套用沒有 `SPATIAL` 選項的新選項群組時，執行個體可能會停滯。您可以使用下列查詢以識別物件：

   ```
   SELECT OWNER, SEGMENT_NAME, TABLESPACE_NAME, BYTES/1024/1024 mbytes
   FROM   DBA_SEGMENTS
   WHERE  SEGMENT_TYPE LIKE '%TABLE%'
   AND    (OWNER, SEGMENT_NAME) IN
          (SELECT DISTINCT OWNER, TABLE_NAME 
           FROM   DBA_TAB_COLUMNS
           WHERE  DATA_TYPE='SDO_GEOMETRY'
           AND    OWNER <> 'MDSYS')
   ORDER BY 1,2,3,4;
   
   SELECT OWNER, TABLE_NAME, COLUMN_NAME
   FROM   DBA_TAB_COLUMNS 
   WHERE  DATA_TYPE = 'SDO_GEOMETRY' 
   AND    OWNER <> 'MDSYS' 
   ORDER BY 1,2,3;
   ```

1. 捨棄參考資料類型或 `SPATIAL` 選項功能的所有物件。

1. 請執行下列其中一項：
   + 從其所屬的選項群組中移除 `SPATIAL` 選項。此變更會影響使用選項群組的所有資料庫執行個體。如需更多詳細資訊，請參閱 [從選項群組移除選項](USER_WorkingWithOptionGroups.md#USER_WorkingWithOptionGroups.RemoveOption)。
   + 修改資料庫執行個體，並指定不包括 `SPATIAL` 選項的不同選項群組。此變更會影響單一資料庫執行個體。您可以指定預設的 (空白) 選項群組或不同的自訂選項群組。如需更多詳細資訊，請參閱 [修改 Amazon RDS 資料庫執行個體](Overview.DBInstance.Modifying.md)。