Oracle Spatial - Amazon Relational Database Service

Oracle Spatial

Amazon RDS は、SPATIAL オプションを使用することで Oracle Spatial をサポートします。Oracle Spatial は、Oracle データベースのストレージ、取得、更新、および spatial データコレクションのクエリを可能にする SQL スキーマと機能を提供します。詳細については、Oracle ドキュメントの Spatial Concepts を参照してください。

重要

Oracle Spatial を使用する場合、以下のいずれかが存在すると、Amazon RDS によって DB インスタンスが最新の Oracle PSU に自動的に更新されます。

  • Common Vulnerability Scoring System (CVSS) スコアが 9 以上のセキュリティの脆弱性

  • その他の発表されたセキュリティの脆弱性

Amazon RDS は Oracle Enterprise Edition (EE) および Oracle Standard Edition 2 (SE2) のみの Oracle Spatial をサポートしています。以下の表では、EE および SE2 をサポートする DB エンジンのバージョンを示しています。

Oracle DB のバージョン EE SE2

21.0.0.0、すべてのバージョン

はい

はい

19.0.0.0、すべてのバージョン

はい

はい

12.2.0.1、すべてのバージョン

はい

はい

12.1.0.2.v13 以降

はい

いいえ

注記

Oracle Database 19c では、空間パッチバンドルはデータベースパッチセット更新 (PSU) およびリリース更新 (RU) とは別のものです。RDS for Oracle は、空間バッチバンドルの適用をサポートしていません。

Oracle Spatial の前提条件

Oracle Spatial を使用するための前提条件は次のとおりです。

  • DB インスタンスが十分なインスタンスクラスであることを確認します。Oracle Spatial は、db.t3.micro または db.t3.small DB インスタンスクラスではサポートされていません。詳細については、「RDS for Oracle インスタンスクラス」を参照してください。

  • DB インスタンスで [自動マイナーバージョンアップグレード] が有効になっていることを確認します。このオプションにより、DB インスタンスは、(それが利用可能になった時点で) DB エンジンのマイナーバージョンアップグレードを自動的に受信できるようになります。これは、Oracle の Java 仮想マシン (JVM) をインストールする、すべてのオプションに必須です。Amazon RDS では、このオプションを使用して、DB インスタンスに対し最新の Oracle パッチセット更新 (PSU)、またはリリース更新 (RU) を行います。詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。

Oracle Spatial のベストプラクティス

Oracle Spatial を使用するためのベストプラクティスは次のとおりです。

Oracle Spatial オプションの追加

DB インスタンスに SPATIAL オプションを追加する一般的な手順は以下のとおりです。

  1. 新しいオプショングループを作成するか、既存のオプショングループをコピーまたは変更します。

  2. オプショングループに [] オプションを追加します。

  3. オプショングループを DB インスタンスに関連付けます。

DB インスタンスに Oracle Java Virtual Machine (JVM) がインストールされていない場合、SPATIAL オプションが追加されている間は短時間停止します。Oracle Java Virtual Machine (JVM) がすでに DB インスタンスにインストールされている場合、停止は発生しません。オプションを追加した後に DB インスタンスを再起動する必要はありません。オプショングループがアクティブになると、すぐに Oracle Spatial が使用可能となります。

注記

この停止中、パスワード検証機能は一時的に無効になります。また、停止中にパスワード検証機能に関連するイベントを確認することもできます。Oracle DB インスタンスが使用可能になる前に、パスワード検証機能が再び有効になります。

SPATIAL オプションを DB インスタンスに追加するには
  1. 使用するオプショングループを決定します。新しいオプショングループを作成することも、既存のオプショングループを使用することもできます。既存のオプショングループを使用する場合は、次のステップは飛ばしてください。または、次の設定でカスタム DB オプショングループを作成します。

    1. [エンジン] で DB インスタンスの Oracle エディションを選択します。

    2. [メジャーエンジンのバージョン] で、DB インスタンスのバージョンを選択します。

    詳細については、「オプショングループを作成する」を参照してください。

  2. オプショングループに [SPATIAL] オプションを追加します。オプションの追加方法の詳細については、「オプショングループにオプションを追加する」を参照してください。

  3. 新規または既存の DB インスタンスに、DB オプショングループを適用します。

    • 新規 DB インスタンスの場合は、インスタンスを起動するときにオプショングループを適用します。詳細については、「Amazon RDS DB インスタンスの作成」を参照してください。

    • 既存の DB インスタンスの場合は、インスタンスを修正し、新しいオプショングループを添付することで、オプショングループを適用します。詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。

Oracle Spatial オプションの削除

SPATIAL オプションで提供されるデータ型を使用するすべてのオブジェクトを削除したら、DB インスタンスからそのオプションを削除できます。DB インスタンスに Oracle Java Virtual Machine (JVM) がインストールされていない場合、SPATIAL オプションの削除中にサービスが短時間停止します。Oracle Java Virtual Machine (JVM) がすでに DB インスタンスにインストールされている場合、停止は発生しません。SPATIAL オプションを削除した後に DB インスタンスを再起動する必要はありません。

SPATIAL オプションを削除するには
  1. データをバックアップします。

    警告

    オプションの一部として有効化されたデータ型がインスタンスで使用されている場合、SPATIAL オプションを削除すると、データが失われる可能性があります。詳細については、「HSM データのバックアップ、復元、エクスポート」を参照してください。

  2. 既存のオブジェクトが、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;
  3. SPATIAL オプションのデータ型や機能を参照するすべてのオブジェクトを削除します。

  4. 次のいずれかを行ってください。

    • SPATIAL オプションを所属するオプショングループから削除します。この変更はそのオプショングループを使用するすべての DB インスタンスに影響します。詳細については、「オプショングループからオプションを削除する」を参照してください。

    • DB インスタンスを修正して、SPATIAL オプションが含まれない別オプショングループを指定します。この変更は、単一の DB インスタンスに影響します。デフォルト (空) のオプショングループや別のカスタムオプショングループを指定できます。詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。