Known issues, limitations, and notes¶
このページには、次の既知の問題、制限、および注意事項がリストされています。
Migration Portal¶
ラップされたオブジェクト¶
Migration Portalはラップされたオブジェクトを評価できません。抽出されたDDLに含める場合、それらはMigration Portalにロードされず、評価されるオブジェクトの数に含まれません。ラップされたオブジェクトを評価してEDB Postgres Advanced Serverに移行する場合は、Migration PortalにアップロードするDDLファイルにオブジェクトのアンラップバージョンを含めます。これを行う推奨される方法は、スキーマ抽出を実行する前に、Oracleデータベース内のラップされたバージョンをクリアテキストバージョンに置き換えることです。スキーマ抽出を実行した後、オブジェクトをラップされたバージョンに置き換えることができます。
ファイルエンコーディング¶
Migration Portalでは、 .SQL
出力ファイルをUTF-8エンコード形式にすることをお勧めします。非UTF-8エンコーディングの.SQL
ファイルをアップロードすると、UTF-8と互換性のないすべての文字が出力DDLで置換文字「�」に変換されます。
Tip
LinuxのiconvユーティリティまたはWindowsのLibIconvユーティリティを使用して、抽出したファイルをUTF-8形式に手動で変換できます。たとえば、データベースのキャラクタセットがLatin-1(ISO-8859-1)の場合、次のように抽出したファイルをUTF-8形式に変換できます。
iconv -f iso-8859-1 -t UTF-8 sample.sql > sample_utf8.sql
ALTERステートメント¶
ALTER TABLE と ALTER TRIGGER を除き、Migration PortalはDDL内の他の ALTER ステートメントを処理しません。
ユーザー、ロール、プロファイル、および付与¶
Grant¶
Migration
Portalは、抽出およびアップロードされたスキーマのOracleユーザーの評価と移行をサポートするようになりました。プロジェクトに関連付けられたスキーマのすべてのユーザー、ロール、およびプロファイルは、Migration
Portalビューの GLOBAL_OBJECTS
擬似スキーマの下にグループ化されます。現在、システム権限、オブジェクト権限、およびロールの付与は、ユーザーオブジェクトのDDLに含まれています。同様に、ロールへのシステム権限とオブジェクト権限の付与は、ロールオブジェクトのDDLに含まれています。
付与は現在ユーザーオブジェクトとロールオブジェクトにアタッチされているため、ユーザーに権限が付与されている1つ以上のオブジェクトに障害が発生すると、ユーザーオブジェクト自分自身が評価に失敗します。この問題を解決するには、個々のステートメントにSQL単一行コメント(--
)を使用するか、連続したgrantステートメントにSQL複数行コメント(/* */
)を使用して、失敗したオブジェクトのgrantステートメントをコメントアウトし、オブジェクトを再評価できます。実行されます。失敗した付与ステートメントに対応する失敗したオブジェクトが修復された後、以前に失敗した付与ステートメントのコメントを外し、ユーザーオブジェクトを再評価できます。
特権¶
スキーマをターゲットEDB Postgres Advanced Serverデータベースに移行するには、移行の実行に使用されているターゲットデータベースユーザーに次の権限が必要です。
プロファイルを移行する
SUPERUSERユーザーとロールを移行する
SUPERUSERまたはCREATE ROLE
パスワード¶
ユーザーを移行する場合、Migration Portalはユーザーのパスワードを移行しません。ユーザーは、パスワードなしでターゲットEDB Postgres Advanced Serverデータベースに作成されます。ユーザーにパスワードを構成することが望ましい場合、または必要な場合は、ユーザーの移行後にターゲットデータベースで手動で行うことができます。
プロファイル¶
Migration Portalは、スキーマユーザーに割り当てられた非DEFAULT
プロファイルを移行します。
Oracleプロファイルには、パスワードとリソースの両方の制限が含まれます。
EDB Postgres Advanced
Serverは、Oracleパスワード関連の制限のみをサポートしています。リソース制限はプロファイルとともに抽出されますが、パスワード制限のみがMigration
Portalによってアップロード、評価、および移行されます。また、Oracleデータベースでは、
DEFAULT
プロファイルが新しい制限値でオーバーライドされている可能性があります。
DEFAULT プロファイルは、 Migration Portalによって移行されません。
EDB Postgres Advanced ServerのDEFAULT プロファイルを、Oracle
DEFAULT
プロファイルに適用された制限のオーバーライドで構成する必要がある場合は、
ALTER PROFILE ステートメントを使用してターゲットのEDB Postgres
Advanced Serverデータベースに手動で適用する必要があります。
EDB DDLエクストラクタ¶
EDB DDLエクストラクタスクリプトは、
Flashbackを使用して復元されたオブジェクトで、まだBIN$b54+4XlEYwPgUAB/AQBWwA==$0のような名前が付いているものを抽出しません。これらのオブジェクトを抽出する場合は、オブジェクトの名前を変更して、抽出プロセスを再実行する必要があります。EDB DDLエクストラクタは、通常のテーブルとして
nologgingテーブルを抽出します。これらのテーブルがEDB Postgres Advanced Serverに移行されると、WALログファイルが作成されます。EDB DDLエクストラクタは、ステータスが
VALIDのオブジェクトのみを抽出します。 Migration Portalで評価するINVALIDステータスのオブジェクトについては、最初にVALIDに更新します。EDB DDLエクストラクタは、Oracleラップ機能を使用して難読化されたオブジェクトを抽出しません。そのため、これらのオブジェクトは、 Migration Portalによって評価されるDDLのセットに含まれません。これらのオブジェクトを評価してEDB Postgres Advanced Serverに移行する場合は、オブジェクトのラップバージョンをラップされていないバージョンに置き換えます。詳細については、 ラップされたオブジェクト を参照してください。
EDB DDLエクストラクタは、スキーマ名とその依存情報を保存するためのグローバル一時テーブルを作成します。これらのテーブルは、抽出が成功すると削除されます。
EDB DDLエクストラクタスクリプトは、PostgreSQLがサポートしていないため、名前が
PG_で始まるスキーマを抽出しません。これらのスキーマを抽出する場合は、抽出前にスキーマの名前を変更する必要があります。EDB DDLエクストラクタは、プロファイル、ロール、および付与の情報を自動的に抽出します。
Oracle Data Pumpユーティリティ¶
Oracleの引用演算子で
IDENTIFIED BY句を使用してデータベースリンクを作成すると、Migration PortalがSQLファイルの解析に失敗する場合があります。たとえば、IDENTIFIED BY VALUES q'[:1]'。ファイルを正常に解析するには、実際のパスワードを使用してみてください。たとえば、IDENTIFIED BY my_password。Oracle Data Pumpユーティリティによって生成されたDDLには、Migration Portalで処理されない
ALTER FUNCTION、ALTER PACKAGE、ALTER TYPEなどのALTER STATEMENTSが含まれる場合があります。
・ Oracle Data
Pumpがスキーマモードで実行されている場合、つまりexpdp
コマンドの実行時にSCHEMAS
パラメーターが使用されている場合、プロファイルとロールが抽出されません。エクスポートされるスキーマユーザーにプロファイルが割り当てられている場合、プロファイルはエクスポートされたimpdp
ファイルの一部ではないため、Migration
Portalでのスキーマユーザーオブジェクトの評価は失敗します。この問題を解決するには、ユーザーオブジェクトのターゲットDDLでプロファイルの割り当てを削除し、ユーザー作成オブジェクトを再評価します。