サポートされていない機能

Advanced Serverは、一部のOracle機能を完全にサポートし、その他の機能を部分的にサポートします。 Migration Toolkitは、サポートされていない機能を使用するオブジェクトを移行できません。

場合によっては、Migration Toolkitは部分的な互換性を提供する機能を使用するオブジェクトを移行できます。それ以外の場合、Advanced Serverは適切な回避策をサポートします。

全文検索は、Oracleとの完全な互換性がない機能の例です。 Advanced Serverデータベースには、かなり以前から全文検索のサポートが含まれていましたが、実装はOracleとはまったく異なります。 Migration Toolkitは、この機能を利用するオブジェクトを移行できません。

Advanced Serverがまだサポートしていない機能もあります。このカテゴリの機能には、自動ストレージ管理、テーブル圧縮、外部テーブルが含まれます。多くの場合、成功する回避策を調整できます。

  • 自動ストレージ管理は、(システム固有の)ボリューム管理ソフトウェアに置き換えることができます。

  • テーブル圧縮は、圧縮されたファイルシステムにあるテーブルスペースにデータを保存することで実装できます。

  • Advanced Serverには外部テーブルはありませんが、フラットテキストファイルをデータベースのステージングテーブルに*読み込む*ことができます。 EDB * Loaderユーティリティを使用して、データをAdvanced Serverデータベースにすばやくロードすることをお勧めします。

  • OracleデータベースからAdvancedサーバーに複数のプロファイルを移行する場合、移行の完了時にユーザー(または複数のユーザー)にプロファイルを手動で割り当てる必要があります。

サポートされていないPostgres機能

Migration Toolkitは、次のPostgres機能の移行をサポートしていません。

OPERATOR CLASS

OPERATOR FAMILY

OPERATOR CLASS および OPERATOR FAMILY については、次の場所にあるPostgreSQLコアドキュメントを参照してください。

https://www.postgresql.org/docs/11/static/indexes-opclass.html

よくある質問

Migration Toolkitはパッケージの移行をサポートしていますか?

Migration Toolkitは、OracleデータベースからAdvanced Serverへのパッケージの移行をサポートしています。 機能概要セクションを参照してください Advanced Serverが提供する移行サポートに関する情報。

ソースデータベースからのデータのみを転送する方法はありますか?

はい。データ転送は、オンラインまたはオフラインの移行の一部としてサポートされています。

Migration Toolkitは、CLOBデータ型のデータを含むテーブルの移行をサポートしていますか?

Migration Toolkitは、 CLOB タイプのデータを含むテーブルの移行をサポートします。

Advanced Serverはenumデータ型をサポートしていますか?

Advanced Serverは現在enumデータ型をサポートしていませんが、将来のリリースでそれらをサポートします。それまでは、チェック制約を使用して、Advanced Serverデータベースに追加されるデータを制限できます。チェック制約は、列が取ることができる有効な値のリストを定義します。

次のコードサンプルには、列の値を3つのdeptタイプのいずれかに制限するチェック制約の簡単な例が含まれています。 sales 、 admin または technical

CREATE TABLE emp (
emp_id INT NOT NULL PRIMARY KEY,
dept VARCHAR(255) NOT NULL,
CHECK (dept IN ('sales', 'admin', 'technical'))
);

有効なdeptタイプを入力してチェック制約をテストすると、INSERTステートメントはエラーなしで機能します。

test=# INSERT INTO emp VALUES (7324, 'sales');

INSERT 0 1

制約(サポート)に含まれていない値を挿入しようとすると、Advanced Serverはエラーをスローします。

test=# INSERT INTO emp VALUES (7325, 'support');

ERROR:new row for relation /"emp/" violates check constraint /"emp_dept_check/"

Advanced Serverはマテリアライズドビューをサポートしていますか?

Postgresは、Oracleデータベースと互換性のあるマテリアライズドビューをサポートしていません。 Postgresでマテリアライズドビュー/サマリーテーブルをセットアップするには、サマリーテーブルを維持するトリガーを手動で作成する必要があります。現在、自動クエリ書き換えはサポートされていません。サマリーテーブルの存在をアプリケーションに認識させる必要があります。

TIMEデータ型を含むMySQLデータベースから移行しようとすると、次のエラーが表示されます。データをテーブルにロード中にエラーが発生しました:時間の形式が正しくありません。 PostgresはMySQLの ``TIME`` データ型をサポートしていますか?

時間コンポーネントの値が24以下である限り、Postgresは TIME データ型を保存するのに問題はありません。

Postgresとは異なり、MySQLの TIME データ型を使用すると、 TIME または INTERVAL の値を表す値を格納できます。 INTERVAL 値を表すMySQLの TIME 列に格納された値は、有効なPostgresの TIMESTAMP 値の許容範囲外になる可能性があります。移行プロセス中に、Postgresが TIME データ列に格納された値を検出し、その値が範囲外であると認識された場合、エラーが返されます。