Performing a Schema Extraction

前提条件

スキーマを抽出する前に、マイグレーションポータルのProjectsページまたはポータルWikiのDDLエクストラクタガイドで提供されているリンクから最新のEDB DDLエクストラクタスクリプトをダウンロードする必要があります。このスクリプトは、 SQL DeveloperまたはSQL * Plusで実行できます。 OracleのDBMS_METADATAビルトインパッケージを使用して、スキーマ(スクリプトの実行中に指定)の下にあるさまざまなオブジェクトのDDLを抽出します。 EDB DDLエクストラクタは、ポータルにアップロードされ、 EDB Postgresの互換性について分析されたDDLファイルを作成します。

Note``CONNECT``および``SELECT_CATALOG_ROLE``ロールと``CREATE TABLE``権限です。!! NoteCONNECTおよびSELECT_CATALOG_ROLEロールとCREATE TABLE権限です。

** SQL * Plus **の場合

  1. SQL  * Plusに接続して、コマンドを実行します。

    • SQL>@edb_ddl_extractor.sql

2.抽出器が抽出されたDDLを保存するスキーマ名前とパスまたはディレクトリします。マルチプルのスキーマを抽出する場合、デリミタとしてコンマ(‘,’)を使用します。

Note現在のデータベースからすべてのユーザスキーマを抽出する場合は、抽出中にスキーマ名を指定しないでください。ただし、抽出するスキーマ名を記載することをお勧めします。!! Note現在のデータベースからすべてのユーザスキーマを抽出する場合は、抽出中にスキーマ名を指定しないでください。ただし、抽出するスキーマ名を記載することをお勧めします。

3.他のスキーマから依存オブジェクトを抽出する場合は、yesまたはnoと入力します。

  • 例、Linux上:

Enter a comma separated list of schemas to be extracted (Default all schemas): HR, SCOTT, FINANCE

Location for output file (Default current location) : /home/oracle/extracted_ddls/

WARNING:

Given schema(s) list may contain objects which are dependent on objects from other schema(s), not mentioned in the list.` `Assessment may fail for such objects. It is suggested to extract all dependent objects together.

Extract dependent object from other schemas?(yes/no) (Default no / Ignored for all schemas option): yes
Enter comma separated list of schemas to be extracted (Default all schemas): HR, SCOTT, FINANCE

Location for output file (Default current location) : c:\Users\Example\Desktop\

WARNING:

Given schema(s) list may contain objects which are dependent on objects from other schema(s), not mentioned in the list.` `Assessment may fail for such objects. It is suggested to extract all dependent objects together.

Extract dependent object from other schemas?(yes/no) (Default no / Ignored for all schemas option): yes

** SQL Developerの場合**

  1. SQLサーバーに接続し、次のコマンドを実行します。

Enter the path for Linux or Windows.

Enter the path for Linux or Windows.

  • 図3-1:LinuxまたはWindowsのパスを入力*

2.スキーマのコンマ区切りリストを入力します。

Provide a list of schemas.

Provide a list of schemas.

  • 図3-2:スキーマのリストを提供*

3.出力ファイルのパスを入力します。

Specify the output file path.

Specify the output file path.

  • 図3-3:出力ファイルパスの指定*

4.(yes / no)を入力して、依存オブジェクトを抽出します。

Extracting dependent objects.

Extracting dependent objects.

  • 図3-4:依存オブジェクトの抽出*

Note!! Note * SQL * PlusとSQL Developerの両方に単一のスキーマ名前を入力することもできます。

スクリプトはソースデータベース内のオブジェクトタイプを反復処理し、タスクが完了すると、 SQL出力は、入力された場所、つまりc:\Users\Example\Desktop\に保存されます。

追加メモ

  • オブジェクトを抽出しないEDB DDLエクストラクタスクリプトがFlashbackを使用して復元し、まだBIN$b54+4XlEYwPgUAB/AQBWwA==$0のような名前を持っています。これらのオブジェクトを抽出する場合は、オブジェクトの名前を変更して、抽出プロセスを再実行する必要があります。

  • DDL DDLエクストラクタは、 nologgingテーブルを通常のテーブルとして抽出します。これらのテーブルがEDB Postgres Advanced Serverに移行されると、WALログファイルが作成されます。 DDLエクストラクタは、スキーマ名とその依存関係情報を保存するためのグローバル一時テーブルを作成します。これらのテーブルは、抽出が正常に終了すると削除されます。

  • DDL DDLエクストラクタスクリプトは、 PostgreSQLがサポートしていないため、名前がPG_で始まるスキーマを抽出しません。これらのスキーマを抽出する場合は、抽出の前にスキーマの名前を変更する必要があります。

サポートされているオブジェクトタイプ

マイグレーションポータルは、次のオブジェクトタイプの移行をサポートしています。

  • Synonyms

  • DBリンク

  • Types and Type Body

  • シーケンス

  • テーブル

  • Constraints

  • インデックス(LOBインデックスおよびマテリアライズドビューのインデックスを除く)

  • Views

  • マテリアライズドViews

  • トリガー

  • Functions

  • Procedures

  • パッケージ

Note!! Note * 列、表、マテリアライズドViewsのコメントもサポートされています。

サポートされていないオブジェクトタイプ

  • Editions

  • オペレーター

  • スケジューラー

  • LOBインデックスとマテリアライズドViewsのインデックス

  • XMLスキーマ

  • プロファイル

  • ロールおよびオブジェクトの付与

  • テーブルスペース

  • ディレクトリ

  • ユーザー

  • RLSポリシー

  • Queues

オラクルシステムスキーマ

EDB DDLエクストラクタスクリプトは、 オラクルからの抽出中に次のシステムスキーマを無視します。

ANONYMOUS

APEX_PUBLIC_USER

APEX_030200

APEX_040000

APEX_040000

APPQOSSYS

AUDSYS

BI

CTXSYS

DMSYS

DBSNMP

DIP

DVF

DVSYS

EXFSYS

FLOWS_FILES

FLOWS_020100

GSMADMIN_INTERNAL

GSMCATUSER

GSMUSER

IX

LBACSYS

MDDATA

MDSYS

MGMT_VIEW

OE

OJVMSYS

OLAPSYS

ORDPLUGINS

ORDSYS

ORDDATA

OUTLN

ORACLE_OCM

OWBSYS

OWBYSS_AUDIT

PM

RMAN

SH

SI_INFORMTN_SCHEMA

SPATIAL_CSW_ADMIN_USR

SPATIAL_WFS_ADMIN_USR

SYS

SYSBACKUP

SYSDG

SYSKM

SYSTEM SYSMAN

TSMSYS WKPROXY

WKSYS

WK_TEST XS$NULL

WMSYS

XDB