1 はじめに
•
• このマニュアルでは、Stack Builderという用語を StackBuilder Plus(Advanced Serverと共に配布)またはStack Builder(EnterpriseDBからのPostgreSQLワンクリックインストーラと共に配布)のいずれか を指すために使用し ます 。
1.1 新機能
• fetchSizeオプションに関連する問題をfetchSize ながら、OracleからAdvanced Serverへの全体的なデータ移行時間が大幅に改善されました 。私たちの研究室での最初のテストでは、データ移行に関しておよそ45%の改善率が示されました。次のコマンドがテストに使用されました。
• このリリースより前のバージョンでは、 TEXT 、 TINYTEXT 、 MEDIUMTEXT 、およびLONGTEXTデータ型はAdvanced ServerのCLOBデータ型にマップされていました。これらのデータ型はAdvanced Serverに存在していたので、データ型は正しいファミリにマッピングされています。このプラスの効果として、これらのデータタイプのいずれかを含むテーブルのデータ移行時間が改善されました。
以下の説明では、 用語は、言語キーワード、ユーザー指定の値、リテラルなどの任意の単語または単語のグループを指します。用語の正確な意味は、それが使用される文脈によって異なります。
• イタリック体のフォント は、通常は初めて定義する文章の中に新しい用語を導入します。
• Fixed-width (mono-spaced) font は、 SQL コマンド、例で使用されている特定のテーブル名および列名、プログラミング言語のキーワード など、文字通りに指定する必要がある用語に使用され ます 。例えば、 SELECT * FROM emp;
•
•
•
•
注意: EnterpriseDBは、Oracle Real Application Clusters(RAC)およびOracle ExadataとMigration Toolkitの併用をサポートしていません。前述のOracle製品は、このEnterpriseDB製品による評価も認証もされていません。
2 移行方法
2.1 移行プロセス
2。 潜在的な移行の問題を特定します。 OracleからAdvanced Serverへの移行の場合は 、Advanced Serverでサポートされている互換性機能の詳細について、 『Oracle Databaseの互換性開発者ガイド』を参照してください。このレビューを支援するために、EnterpriseDBの移行評価サービスを使用することを検討してください。
4。 移行に大量のデータが含まれる場合は、データを移動する前にスキーマ定義を移行することを検討してください。 DDL移行の結果を確認し、移行サマリーに報告されている問題を解決します。このドキュメントのセクション8には、移行の問題を解決するための情報が含まれています。
•
7。
• Dynatuneを使用してデータベース構成リソースを動的に調整します。
•
• データベース統計を検索するには、 ANALYZEコマンドを使用します。オラクルの 開発者 ガイド (EnterpriseDBのウェブサイトを通じて利用できる両方) のための EDBのPostgres Advanced Serverのガイドとデータベースの 互換性は、Advanced Serverで使用できるパフォーマンスチューニングツールについての情報を提供します。
クライアントアプリケーションをPostgresデータベースを使用するように変換するには、接続プロパティを修正して新しいターゲットデータベースを指定する必要があります。 Javaアプリケーションの場合は、JDBCドライバ名( Class.forName )とJDBC URLを変更します。ほとんどのLinuxおよびWindowsシステムには、ODBCデータソースの作成と編集を可能にするグラフィカルツールが含まれています。 ODBCをインストールしたら、[ Administrative Tools ]メニューでODBC Data Source Administratorへのリンクを確認します。 [ Add ]ボタンをクリックして[ Create New Data Source ]ウィザードを起動します。新しいターゲットデータソースを定義するためのダイアログを完了します。アプリケーションには SQLConnect (またはおそらくSQLDriverConnect ) への呼び出しが含まれます。 e 呼び出しを終了してデータソース名を変更します。次の例では、データソースの名前は "OracleDSN" です。
3 機能概要
• ラージオブジェクトデータ型に使用されるバッチサイズを指定するには、 -lobBatchSizeオプションを使用します。
• -dropSchemaオプションを使用して、マイグレーションの前に既存のスキーマをドロップして新しいスキーマを作成してください。
•
•
1。
•
•
•
Migration ToolkitはPostgresデータベースに即座に直接 移行することも( オンライン 移行 )、または後でPostgresデータベースにオブジェクト定義を再作成するために使用するスクリプトを生成することもできます( オフライン 移行 )。デフォルトでは、Migration ToolkitはオブジェクトをPostgresデータベースに直接作成します。対照的に、移行したオブジェクトまたはデータを新しいデータベースに再現するために後で使用できるSQLスクリプトを生成するための -offlineMigrationオプションを含めます。実行する前にMigration Toolkitによって生成された移行スクリプトをカスタマイズすることで、移行されたオブジェクトを変更できます。 -offlineMigrationオプションを使用すると、システムの負荷に最も適した時間に実際の移行をスケジュールできます。
RPMパッケージまたはStack Builderを使用してMigration Toolkitをインストールできます。 Stack Builderは、Advanced Serverと、EnterpriseDBから入手可能なPostgreSQLのワンクリックインストーラの両方と一緒に配布されます。 Stack Builderを使用してインストールを実行する方法については、セクション4.2を 参照してください。Migration Toolkitをインストールする前に、まずJava(バージョン1.7.0以降)をインストールする必要があります。 Javaインストーラーの無料ダウンロードとインストール手順は、次のURLから入手できます。
RPMパッケージを使用して、Migration Toolkitを64ビットLinuxホストにインストールできます。 enterprisedb-toolsリポジトリからパッケージをインストールするように yumを設定する方法については、次のWebサイトで入手可能な『EDB Postgres Advanced Serverインストールガイド』を参照してください。RPMパッケージを使用してMigration Toolkitをインストールしたら、インストールを構成する必要があります。 Migration Toolkitを起動する前に、Java環境をインストールする必要があります。デフォルトでは 、RPMインストーラ用 の pg_hba.conf ファイルはリモートクライアントに対してIDENT認証を強制します。 Migration Toolkitを起動する前に、 pg_hba.conf ファイルを変更し、認証方法をIDENT以外の形式に変更して(そしてサーバーを再起動して)、またはIDENTサーバーがアクセス可能であることを確認するために以下の手順を実行します。
1。 identd サーバーがインストールされ、稼働し ていることを確認して ください 。たとえば、 yum パッケージマネージャを 使用して 、次のコマンドを呼び出して identd サーバ をインストール でき ます。
2。
3。
注意:このガイドでは、Stack Builderという用語を StackBuilder Plus(Advanced Serverとともに配布)またはStack Builder(EnterpriseDBからのPostgreSQLワンクリックインストーラとともに配布)のいずれか を指すのに 使用しています。Stack BuilderでMigration Toolkitのインストールを実行する前に、Java JVM(バージョン1.7.0以降)を用意しておく必要があります 。 Javaインストーラーの無料ダウンロードとインストール手順は、次のURLから入手できます。Java実行可能ファイルは、検索パス (%PATH% Windowsの場合は (%PATH% 、Linux / Unixの 場合は $PATH ) 内になければなりません 。以下のコマンドを使用して検索パスを設定します( javadir Java実行可能ファイルを保持するディレクトリの名前に javadir )。検索パスを設定したら、Stack Builderインストールウィザードを使用して、Migration Toolkitを Advanced ServerまたはPostgreSQL にインストール できます。既存のAdvanced ServerインストールからStackBuilder Plusを起動するには、 Start (または[ Applications ])メニューから EDB に移動し ます。 Postgres メニュー EDB Add-ons メニュー EDB Add-ons 開き、 StackBuilder を選択し StackBuilder Plus メニューオプション。PostgreSQLからのStack Builderの 起動PostgreSQLインストールからStack Builderを起動するには、 Start (または[ Applications ])メニューから[ PostgreSQL ] メニューに 移動し、 Start Applications ]を 選択し Application StackBuilder Plus メニューオプション。ドロップダウンリストボックスを使用して、利用可能なサーバーの一覧からターゲットサーバーのインストールを選択します。インターネットでインターネットにアクセスするためにプロキシサーバーを使用する必要がある場合は、[ Proxy servers ]ボタンを使用して [ Proxy servers ]ダイアログを開き、 Proxy serversを指定します。プロキシサーバーを使用する必要がない場合は、[ Nextへ]をクリックしてアプリケーション選択ウィンドウを開きます。StackBuilder Plusを使用してMigration ToolkitをAdvanced Serverインストールに Add-ons,場合は、ツリーコントロールの[ Add-ons, tools and utilitiesノードを展開し、[ EnterpriseDB Migration Toolkit横にあるチェックボックスをAdd-ons, tools (図4.3を参照)。 Nextをクリックして続けます。Stack Builderを使用してPostgreSQLインストールにMigration Toolkitを追加する 場合は、ツリーコントロールの [ EnterpriseDB Tools ノード([ Registration-required and trial products ノードの 下にあり ます)を展開し、[ Migration Toolkit 横のボックスを Registration-required and trial products Migration Toolkit 。 Next を クリックし て続けます。Advanced Serverは、 パスワードウィンドウで指定された パスワードをデータベーススーパーユーザに使用します。指定されたパスワードは、Advanced Serverホストに存在するセキュリティポリシーに準拠している必要があります。Migration Toolkit が Selected Packages リストに 含まれて いることと、 Download directory フィールドに適切なダウンロード場所 が含まれていることを確認します(図4.5を参照)。 Next を クリックし てMigration Toolkitのダウンロードを開始します(図4.6を参照)。ダウンロードが完了すると、Stack Builderはインストールファイルが正常にダウンロードされたことを確認します(図4.7)。 Next を 選択 してMigration Toolkitインストールウィザードを開きます。適切なラジオボタンを強調表示する前に、使用許諾契約書をよく確認してください(図4.7を参照)。 NextをクリックしてUser Authenticationウィンドウに進みます( 図4.10を参照)。デフォルトでは、Migration Toolkitは mtk ディレクトリに インストールされ ます。表示されているデフォルトのインストールディレクトリをそのまま使用するか(図4.12を参照)、ディレクトリを変更し、[ Next ]をクリック して続行します。インストールウィザードは、 Setup プログラムがMigration Toolkitをインストールする準備ができ ていることを確認し Setup (図4.13を参照)。 Next を クリック してインストールを開始します。Migration Toolkitのインストールが完了したことを確認するダイアログが表示されます(図4.14を参照)。 「 FinishをクリックしてMigration ToolkitインストーラーをFinishします 。Stack Builderが最後に選択されたコンポーネントのインストールを完了すると、 Installation 表示されます。 Completed ウィンドウ(図4.15参照) 「 Finish を クリックして Stack Builderを閉じます。
Migration Toolkitを起動する前に、無料で入手可能なソース固有のドライバをダウンロードしてインストールする必要があります。ドライバをダウンロードする、またはベンダのダウンロードサイトへのリンクを入手するには、EnterpriseDB WebサイトのAdvanced Downloadsページの Third Party JDBC Driversセクションにアクセスしてください。
Migration Toolkitは、移行プロセス中にtoolkit.propertiesファイルに格納されている構成情報と接続情報を使用して、ソースデータベースとターゲットデータベースを識別して接続します。 Linuxでは、 toolkit 。 propertiesファイルは次の場所にあります。toolkit.propertiesファイルの例を図5.1に示します。図5.1 - 典型的な toolkit.propertiesファイル
• SRC_DB_URLは、Migration Toolkitがソースデータベースに接続する方法を指定します。 URLの形成に関する詳細については、ソースデータベースに対応するセクションを参照してください。
• SRC_DB_USERは、ソースデータベースの(十分な特権を持つ)ユーザー名を指定します。
• SRC_DB_PASSWORDは、ソースデータベースユーザーのパスワードを指定します。
• TARGET_DB_URLは、ターゲットデータベースのJDBC URLを指定します。
• TARGET_DB_USERは、特権のあるターゲットデータベースユーザの名前を指定します。
• TARGET_DB_PASSWORDは、ターゲットデータベースユーザーのパスワードを指定します。
5.1 高度なサーバURLの定義
•
•
•
• Migration Toolkitは、 toolkit.propertiesファイルからソースデータベースとターゲットデータベースの接続仕様を読み取ります。それぞれの接続情報には、次のものが含まれていなければなりません。プロトコルは常に jdbcです。{TARGET_DB_USER|SRC_DB_USER}する権限を持つユーザーを指定する必要がありCREATE移行オブジェクトの各タイプ。データを表にマイグレーションする場合、指定されたユーザーは各ターゲット表に対してINSERT 、 TRUNCATE 、およびREFERENCES特権も必要とする可能性があります。{TARGET_DB_PASSWORD|SRC_DB_PASSWORD}は特権を持つAdvanced Serverユーザーのパスワードに設定されます。
•
•
•
• Migration Toolkitは、 toolkit.propertiesファイルからソースデータベースとターゲットデータベースの接続仕様を読み取ります。それぞれの接続情報には、次のものが含まれていなければなりません。プロトコルは常に jdbcです。{SRC_DB_USER|TARGET_DB_USER}する権限を持つユーザーを指定する必要がありCREATE移行オブジェクトの各タイプ。データを表にマイグレーションする場合、指定されたユーザーは各ターゲット表に対してINSERT 、 TRUNCATE 、およびREFERENCES特権も必要とする可能性があります。{SRC_DB_PASSWORD|TARGET_DB_PASSWORD}は特権を持つPostgreSQLユーザのパスワードに設定されます。
5.3 Oracle URLの定義Migration Toolkitは、OracleデータベースからPostgreSQLまたはAdvanced Serverデータベースへの移行を容易にします。 Oracleから移行するときは、 toolkit.propertiesファイルでOracleソースデータベースの接続指定を指定する必要があります 。接続情報には以下が含まれていなければなりません。Oracleデータベースから移行する場合は、 SRC_DB_URL JDBC URLを含める必要があります。これは2つの形式のいずれかで指定します。最初の形式は次のとおりです。プロトコルは常に jdbcです。サブプロトコルは常に oracleです。SRC_DB_USERは、特権Oracleユーザーの名前を指定する必要があります。 注: Oracleユーザーには、OracleからAdvanced Serverにオブジェクトを移行するためのDBA特権が必要です。 Oracle GRANT DBA TO userコマンドを使用してDBA権限をOracleユーザーに付与し、必要なデータベースオブジェクトをすべて確実に移行できます。SRC_DB_PASSWORDは、指定されたユーザーのパスワードを含める必要があります。
5.4 MySQLのURLを定義するMigration Toolkitは、MySQLデータベースからAdvanced ServerまたはPostgreSQLデータベースへの移行を容易にします。 MySQLから移行する場合は、 toolkit.propertiesファイルでMySQLソースデータベースの接続仕様を指定する必要があります 。接続情報には以下が含まれていなければなりません。MySQLから移行するとき、 SRC_DB_URLはJDBC URLの形式を取ります。例えば:プロトコルは常に jdbcです。サブプロトコルは常に mysqlです。SRC_DB_USERは特権のあるMySQLユーザーの名前を指定するべきです。SRC_DB_PASSWORDは、指定されたユーザーのパスワードを含める必要があります。
5.5 SybaseのURLを定義するMigration Toolkitは、SybaseデータベースからAdvanced Serverデータベースへの移行を容易にします。 Sybaseから移行するときは、 toolkit.propertiesファイルでSybaseソースデータベースの接続仕様を指定する必要があります 。接続情報には以下が含まれていなければなりません。Sybaseから移行する場合、 SRC_DB_URLはJTDS URLの形式を取ります。例えば:プロトコルは常に jdbcです。ドライバ名は常に jtdsです。サーバタイプは常に sybaseです。SRC_DB_USERは、特権のあるSybaseユーザーの名前を指定する必要があります。SRC_DB_PASSWORDは、指定されたユーザーのパスワードを含める必要があります。
•
•
•
•
• SQL Serverデータベースに接続している場合、 SRC_DB_URLはJTDS URLの形式を取ります。例えば:プロトコルは常に jdbcです。ドライバ名は常に jtdsです。サーバータイプは常に sqlserverです。SRC_DB_USERは、特権を持つSQL Serverユーザーの名前を指定する必要があります。SRC_DB_PASSWORDは、指定されたユーザーのパスワードを含める必要があります。
Migration Toolkitをインストールし、 toolkit.propertiesファイルでソースデータベースとターゲットデータベースの接続プロパティを指定すると 、Migration Toolkitは移行を実行する準備が整いました。注: Migration Toolkitの呼び出し時に以下のエラーが表示される場合は、 toolkit.propertiesファイルのファイル許可を確認してください。Migration Toolkitを実行しているオペレーティングシステムのユーザーアカウントは、最低限のファイルの読み取り権限を持つtoolkit.propertiesファイルの所有者である必要があります。さらに、グループや他のユーザーにはいかなる種類の許可も与えてはいけません。以下は、ユーザーenterprisedbがMigration Toolkitを実行している場合の推奨ファイル許可の例です。ただし、Migration Toolkitは 、JDBC接続プロトコルを使用したNULL文字値(組み込み2進ゼロ0x00)のインポートをサポートしません 。 NULL文字を含むデータをインポートしている場合は、 -replaceNullCharオプションを使用して、 NULL文字を単一のNULL置換文字に置き換えます。
6.1 Oracleからのスキーマの移行コマンドラインで指定しない限り、Migration ToolkitはソースデータベースをOracle、ターゲットデータベースをAdvanced Serverにします。 Linuxで完全なスキーマを移行するには、実行可能ファイルに移動して次のコマンドを呼び出します。$ ./runMTK.sh schema_name注:移行されたスキーマのデフォルトデータベースユーザーが自動的に移行されると、そのようなカスタムプロファイルが存在する場合は、そのデフォルトデータベースユーザーのカスタムプロファイルも移行されます。カスタムプロファイルは、ユーザーが作成したプロファイルです。たとえば、カスタムプロファイルは、OracleプロファイルのDEFAULTおよびMONITORING_PROFILE除外します。
-sourcedbtype source_typesource_typeは、ソースデータベースのサーバタイプを指定します。 source_typeは大文字と小文字を区別しsource_typeん。デフォルトでは、 source _ typeはoracleです。 source_typeは、次のいずれかの値になります。
oracle (the default value) target _ typeは、ターゲットデータベースのサーバータイプを指定します。 target_typeは大文字と小文字を区別しtarget_typeん。デフォルトでは、 target _ typeはenterprisedbです。 target_type 次のいずれかの値になります。
次の例では、 HR という名前のスキーマ(テーブル定義とテーブルコンテンツ)を Linuxシステム上のMySQLデータベースからAdvanced Serverホストに移行します。このコマンドには、 - sourcedbtypeおよびtargetdbtypeオプションが含まれています。Migration Toolkitコマンドの最後に、コンマ区切りのスキーマのリストを含めることで、ソースデータベースから複数のスキーマを移行できます。次の例では、MySQLデータベースからPostgreSQLデータベースに複数のスキーマ(名前は HRおよびACCTG )を移行します。
Migration Toolkitを実行するときに移行オプションを追加して、移行の詳細を簡単に制御できます。たとえば、データベース内のすべてのスキーマを移行するには、コマンドに-allSchemasオプションを追加します。
7.1 オフライン移行コマンドラインで-offlineMigrationオプションを指定した場合 、Migration Toolkitはオフライン移行を実行します。オフライン移行中に、Migration Toolkitは選択された各オブジェクトの定義を読み取り、後で実行されたときにPostgresの各オブジェクトを複製するSQLスクリプトを作成します。注:以下の例は、LinuxでMigration Toolkitを呼び出す方法を示しています。 WindowsでMigration Toolkitを起動するには、 runMTK.batコマンドをrunMTK.batコマンドにrunMTK.shます。各データベースオブジェクト定義は、ユーザーのホームフォルダ内のスキーマ名とオブジェクトタイプから派生した名前で、別々のファイルに保存されます。代替ファイルの保存先を指定するには、 - offlineMigrationオプションの後にディレクトリ名を offlineMigrationます。-のみ(空のテーブルを作成する)スキーマ・オブジェクトのオフライン移行を実行するために、指定 schemaOnly -に加えてキーワードofflineMigration :移行ツールキットを起動するときにキーワードを-のみ(任意のスキーマ・オブジェクトの定義を省略)、データのオフライン移行を実行するために、指定 dataOnly -キーワードとofflineMigration移行ツールキットを起動するときにキーワードをデフォルトでは、テーブルデータを含むオフライン移行を実行すると、テーブルごとに個別のファイルが作成されます。複数のテーブルからのデータを含む単一のファイルを作成するには、 - singleDataFileキーワードを指定します 。注意してください: - singleDataFileオプションは、プレーンなSQLフォーマットでデータを移行するときにのみ利用可能です。 - singleDataFileオプションを含める場合は、 - safeModeキーワードを含める必要があります。
7.1.1 オフライン移行スクリプトの実行オフライン移行中に生成されたスクリプトを実行するには、 edb-psqlコマンドライン(Advanced Server上)またはpsqlコマンドライン(PostgreSQL上)を使用します。次の例では、Advanced Serverに格納されている新しいデータベース( acctg )にスキーマ( hr )を復元する方法を説明します。
1。
2。 edb-psql 使用して新しいデータベースに接続します 。
4。 -offlineMigrationコマンドに‑singleDataFileキーワードが含まれている場合、 mtk_hr_data.sqlスクリプトには、新しいターゲットデータベース内のすべてのオブジェクトを再作成するために必要なコマンドが含まれます。データベースに次のコマンドを入力します。
7.2 インポートオプションデフォルトでは、Migration ToolkitはソースデータベースをOracle、ターゲットデータベースをAdvanced Serverと見なします。含ま ‑sourcedbtypeと-targetdbtypeデフォルト以外のソースまたはターゲット・データベースを指定するためのキーワードは。デフォルトでは、Migration Toolkitはスキーマの移行時にデータとオブジェクト定義の両方をインポートします。あるいは、データ定義とオブジェクト定義のどちらをインポートするかを選択できます。-sourcedbtype source_type-sourcedbtypeオプションは、ソースデータベースの種類を指定します。 source_typeは、 mysql 、 oracle 、 sqlserver 、 sybase, postgresqlまたはenterprisedbいずれかの値enterprisedb 。 source_typeは大文字と小文字を区別しsource_typeん。デフォルトでは、 source _ typeはoracleです。-targetdbtype target_type-targetdbtypeオプションは、ターゲット・データベース・タイプを指定します。 target_typeは、以下のいずれかの値になります: enterprisedb, postgres,またはpostgresql 。 target_typeは大文字と小文字を区別しtarget_typeん。デフォルトでは、 target _ typeはenterprisedbです。このオプションは、スキーマ定義をインポートし、選択したすべてのスキーマオブジェクトをターゲットデータベースに作成します。このオプションを dataOnlyオプションと一緒に使用することはできません 。このオプションはテーブルデータのみをコピーします。 -tablesオプションと一緒に使用すると 、Migration Toolkitは選択されたテーブルのデータのみをインポートします(下記の使用法の詳細を参照)。このオプションを-schemaOnlyオプションと-schemaOnlyに使用することはできません。
7.3 スキーマ作成オプションデフォルトでは、Migration Toolkitはソーススキーマオブジェクトやデータを同じ名前のスキーマにインポートします。ターゲットスキーマが存在しない場合、Migration Toolkitは新しいスキーマを作成します。あるいは、 ‑targetSchemaオプションを使用してカスタムスキーマ名を指定することもできます。次のオプションを使用して、既存のスキーマを削除して新しいスキーマを作成することを選択できます。trueに設定すると 、Migration Toolkitは既存のスキーマ(およびそのスキーマ内のすべてのオブジェクト)を削除して新しいスキーマを作成します。 (デフォルトでは、 -dropSchemaはfalse )。-targetSchema schema_name移行したスキーマの名前を指定するには、 -targetSchemaオプションを使用します。複数のスキーマを移行する場合は、各スキーマの名前を、間にスペースを入れずにカンマ区切りのリストで指定します。コマンド行に-targetSchemaオプションが含まれていない場合、新しいスキーマの名前はソーススキーマの名前と同じになります。ターゲットスキーマ名として、 schema 、 dbo 、 sysまたはpg _ catalog information 指定することはできません 。これらのスキーマ名はAdvanced Serverのメタデータストレージ用に予約されています。
-tables table_listソーススキーマから選択したテーブルをインポートします。 table_listは、テーブル名のコンマ区切りのリスト(スペース文字はtable_listません)です(例: -tables emp,dept,acctg )。デフォルトでは、Migration ToolkitはSybaseデータベースからのチェック制約とデフォルト句の移行を実装していません。 Sybaseデータベースから制約とデフォルト句を移行 するために -constraints パラメータを 指定する場合 は、 ‑ignoreCheckConstFilter パラメータを 含め ます。外部キー制約の移行を省略します。このオプションは、スキーマ全体をインポートするか、場合にのみ有効です -allTables または -tables table _ list オプションが指定されています。テーブルインデックスをインポートします。スキーマ全体またはインポートするときにこのオプションが有効であるとき-allTablesまたは-tables table_listオプションが指定されています。テーブルトリガをインポートします。このオプションでは、全体のスキーマをインポートするとき、またはときに有効です -allTablesか-tables table_listオプションが指定されています。ソーススキーマからビューをインポートします。このオプションは動的ビューと実体化ビューの両方をソースから移行することに注意してください 。 (OracleとPostgresのマテリアライズドビューはサポートされています。)-views view_list指定されたマテリアライズドビューまたは動的ビューをソーススキーマからインポートします。 (OracleおよびPostgresのマテリアライズドビューがサポートされています。) view_listは、ビュー名のコンマ区切りのリスト(スペース文字は-views all_emp,mgmt_list,acct_list )です(例: -views all_emp,mgmt_list,acct_list )。-sequences sequence_listソーススキーマから選択したシーケンスをインポートします。 sequence_listは、シーケンス名のコンマ区切りのリストです(間にスペース文字は入れません)。-procs procedures_list選択したストアドプロシージャをソーススキーマからインポートします。 procedures_listは、プロシージャー名のコンマ区切りのリスト(スペース文字は入れません)です。-funcs function_list-packages package_list選択したパッケージをソーススキーマからインポートします。 package_listは、パッケージ名のコンマ区切りのリストです(間にスペース文字は入れません)。- allDomainsソーススキーマからすべてのキューをインポートします。これらは、 DBMS_AQ および DBMS_AQADM 組み込みパッケージ によって作成および管理されているキューです 。 Oracleがソースデータベースの場合は、 -objectTypes オプションも指定する必要があります。 Advanced Serverがソースデータベースの場合は、 -allDomains および -allTables オプションも指定する必要があります。 (OracleおよびAdvanced Serverのキューがサポートされています。)-queues queue_list選択したキューをソーススキーマからインポートします。 queue_listは、キュー名のコンマ区切りのリストです(間にスペースは入りません)。 これらは、 DBMS_AQ および DBMS_AQADM 組み込みパッケージ によって作成および管理されているキューです 。 Oracleがソースデータベースの場合は、 -objectTypes オプションも指定する必要があります。 Advanced Serverがソースデータベースの場合は、 -allDomains および -allTables オプションも指定する必要があります。 (OracleおよびAdvanced Serverのキューがサポートされています。)- allRules
7.5 移行オプションMigration Toolkitがデータのインポート時に使用する並列スレッドの数を指定するには 、 - loaderCount オプションを使用します。このオプションは、ソースデータベースに大量のデータが含まれていて、Postgresホスト(Migration Toolkitを実行している)にハイエンドのCPUおよびRAMリソースがある場合に特に便利です。一方で value ゼロ以外の任意の正の数であってもよい、我々はことをお勧めします value CPUコアの数を超えないようにしてください。デュアルコアCPU は 2 最適 value を 持つべき です。非パーティション化ソース表がパーティション化表にマップされている場合は 、 - enableConstBeforeDataLoad オプションを 含めて ください。このオプションは、データ移行の前に、ターゲット表に対するすべてのトリガー(個々のパーティションにデータをリダイレクトするトリガーを含む)を有効にします。 - enableConstBeforeDataLoad は、 - truncLoad パラメーターも指定されて いる場合にのみ有効です 。複数スキーマの移行を実行している場合、最初の移行試行でスキーマ間の依存関係が原因で移行に失敗したオブジェクトは、後続の移行中に正常に移行される可能性があります。 -retryCount オプションを 使用して、 Migration Toolkitが最初のマイグレーション試行中に失敗したオブジェクトをマイグレーションするための試行回数を指定します。 0 より大きい value を 指定してください 。デフォルト値は 2 です。-safeModeオプションを含めると 、Migration Toolkitは各行を移行済みとしてコミットします。移行がすべてのレコードの転送に失敗した場合、失敗の時点より前に挿入された行はターゲットデータベースに残ります。-fastCopyオプションを含めると、 Migration ToolkitがWALロギングをバイパスして最適化された方法でCOPY操作を実行するように指定します。デフォルトは無効です。 -fastCopyオプションを使用することを選択した場合、マイグレーションが中断されると、マイグレーション済みデータは(ターゲット・データベース内で)リカバリー不能になる可能性があります。-replaceNullChar valueただし、Migration Toolkitは 、JDBC接続プロトコルを使用したNULL文字値(組み込み2進ゼロ0x00)のインポートをサポートしません 。 NULL文字を含むデータをインポートしている場合は、 -replaceNullCharオプションを使用して、 NULL文字を単一のNULL置換文字に置き換えます。置換文字を引用符またはアポストロフィで囲まないでください。ターゲットデータベースに対してPostgres ANALYZE操作を呼び出すには、 - analyzeオプションを含めます。オプティマイザは、 ANALYZE操作によって収集された統計を調べ、その情報を利用して効率的なクエリプランを構築します。ターゲットデータベースに対してVACUUM操作とANALYZE操作の両方を呼び出すには、 - vacuumAnalyzeオプションを含めます。オプティマイザは、 ANALYZE操作によって収集された統計を調べ、その情報を利用して効率的なクエリプランを構築します。 VACUUM操作は、ターゲットデータベース内のデッドタプルによって占有されているすべての記憶領域を再利用します。一括挿入のバッチサイズを指定します。有効値は1〜1000です。デフォルトのバッチサイズは1000です。 Out of Memory -batchSize例外が発生した場合は、 -batchSizeの値を減らしてください。COPYコマンドで使用するバッチサイズをMB単位で指定します。 0より大きい任意の値が有効です。デフォルトのバッチサイズは8 MBです。LOBデータ・タイプのバッチにロードする行数を指定してください。 BYTEA 、 BLOB 、 CLOB などのラージオブジェクトタイプ(LOB)列を含むテーブルのデータ移行は、デフォルトでは一度に1行ずつ実行されます。これは、個々のLOB列が数百メガバイトのデータを保持している場合に、ヒープ・スペース不足エラーを回避するためです。 LOB列の平均データ・サイズが下限にある場合は、各バッチ内の行数を0より大きい任意の値で指定することによって、LOBバッチ・サイズをカスタマイズできます。結果セット内でフェッチされる行数を指定するには、 -fetchSizeオプションを使用します。指定された場合-fetchSize大きすぎると、あなたが発生する可能性のOut of Memory例外。大きなテーブルを移行するときにこの落とし穴を回避するには、 -fetchSizeオプションを-fetchSizeます。デフォルトのフェッチサイズはJDBCドライバの実装に固有のもので、データベースによって異なります。MySQLユーザー注:デフォルトでは、MySQL JDBCドライバーは単一のネットワークラウンドトリップで、テーブルにあるすべての行をクライアントアプリケーション(Migration Toolkit)にフェッチします。この動作は、大きなテーブルに使用可能なメモリを簡単に超えることがあります。 'out of heap space'エラーが発生した場合は 、コマンドライン引数として-fetchSize 1を指定して、Migration Toolkitに一度に1行ずつテーブルデータをロードさせます。-filterProp file_namefile_nameは、 key=valueペアで制約を含むファイルの名前を指定します。データベースから読み取られた各レコードは、制約に対して評価されます。制約を満たすものは移行されます。ペアの左側にはテーブル名がリストされています。テーブル名はスキーマで修飾しないでください。右側は、移行された各行に当てはまる必要がある条件を指定します。たとえば、プロパティファイルに次の制約を含めます。-customColTypeMapping column_listカスタム型マッピングを使用して、移行された列のデータ型を変更します。各ペアの左側は、正規表現で列を指定します。各ペアの右側には、列がとるべきデータ型が示されています。セミコロンで区切られた column_list に複数のペアを含めることができます 。たとえば、名前がID終わるすべての列をINTEGER型にマッピングするには、次のカスタムマッピングエントリを使用します。' \\ '文字はエスケープ文字列として機能します。以来. 'は正規表現の予約文字です。Linuxでは' \\.使用してください\\. 'を表す' . ' キャラクター。たとえば、カスタムマッピングを使用してEMPテーブルのEMP_ID列から行を選択するには、次のカスタムマッピングエントリを指定します。property_file に複数のカスタム型マッピングを含めることができ property_file 。ファイル内の各エントリは、 key=valueペアで、別々の行に指定してください。各ペアの左側は、正規表現を使って列を選択します。各ペアの右側には、列がとるべきデータ型が示されています。
7.6 Oracle固有のオプションソースデータベースからすべてのユーザーと役割をインポートします。 -ということに注意してください allUsers Advanced ServerのデータベースへのOracleデータベースからの移行時のオプションのみがサポートされています。-users user_list選択したユーザーまたはロールをソースOracleデータベースからインポートします。 user_listは、ユーザー名/役割名のコンマ区切りのリストです(間にスペース文字は入れません)(例: -users MTK 、 SAMPLE 、 acctg )。 -ということに注意してくださいusers OracleデータベースからAdvanced Serverのデータベースへの移行時にオプションのみがサポートされています。ソースデータベースからすべてのカスタム(つまりユーザー作成)プロファイルをインポートします。 DEFAULTやMONITORING_PROFILE などの他のOracleカスタム以外のプロファイルはインポートされません。Oracleリソースパラメータなど、他のすべてのプロファイルパラメータはインポートされません。 SRC_DB_USER 指定されたOracleデータベースユーザーは、OracleデータディクショナリビューDBA_PROFILESに対するSELECT権限を持っている必要があります。-ということに注意してください allProfiles Advanced ServerのデータベースへのOracleデータベースからの移行時のオプションのみがサポートされています。-profiles profile_list選択したカスタム(つまり、ユーザー作成)プロファイルをソースOracleデータベースからインポートします。 profile_listは、プロファイル名のコンマ区切りリスト(間にスペース文字は含まない)です(例: -profiles ADMIN_PROFILE,USER_PROFILE )。 DEFAULTやMONITORING_PROFILEなどのOracleのカスタム以外のプロファイルはインポートされません。-allProfilesオプションと同様に 、パスワードパラメータのみがインポートされます。 SRC_DB_USER指定されたOracleデータベースユーザーは、OracleデータディクショナリビューDBA_PROFILESに対するSELECT権限を持っている必要があります。-ということに注意してください profiles Advanced ServerのデータベースへのOracleデータベースからの移行時のオプションのみがサポートされています。-importPartitionAsTable table_listOracleホスト上にあるパーティション表の内容を単一の非パーティション表にインポートするには、 - importPartitionAsTableパラメーターを含めます。 table_listは、テーブル名のコンマ区切りリスト(スペース文字は入れない)です(例: -importPartitionAsTable emp,dept,acctg )。dblink_oraモジュールは、SQLレベルでのAdvanced ServerとOracleの接続性を提供します。 dblink_oraはAdvanced Serverデータベースのインストールの一部としてバンドルおよびインストールされています。 dblink_oraはCOPY APIメソッドを利用してデータベース間でデータを転送します。このメソッドはJDBC COPYメソッドよりもかなり高速です。ターゲットAdvanced Serverデータベースに dblink_oraインストールされ、構成されている必要があります。 dblink_oraについては、 dblink_oraで入手可能な『Oracle Database開発者向けデータベース互換性ガイド 』の第12章「dblink_ora」を参照してください。Oracleデータベースのリンクを移行するには、このオプションを選択します。ソースデータベース内の各リンク接続のパスワード情報は暗号化されているため、指定しない限り、ダミーパスワード( edb )が代入されます。代わりに、 name=valueペアの(間にスペース文字を入れずに)コンマ区切りのリストを使用して、各データベースリンクのパスワードを指定することもできます 。ペアの左側にリンク名を、右側にパスワードの値を指定してください。- allSynonyms-allSynonyms オプションを 含めると、 すべてのパブリックおよびプライベートシノニムをOracleデータベースからAdvanced Serverデータベースに移行できます。同じ名前の同義語がターゲットデータベースにすでに存在する場合、既存の同義語は移行されたバージョンに置き換えられます。- allPublicSynonymsすべてのパブリックシノニムをOracleデータベースからAdvanced Serverデータベースに移行するに は、 -allPublicSynonyms オプションを 含め ます。同じ名前の同義語がターゲットデータベースにすでに存在する場合、既存の同義語は移行されたバージョンに置き換えられます。- allPrivateSynonymsすべてのプライベートシノニムをOracleデータベースからAdvanced Serverデータベースに移行するに は、 -allPrivateSynonyms オプションを 含め ます。同じ名前の同義語がターゲットデータベースにすでに存在する場合、既存の同義語は移行されたバージョンに置き換えられます。- useOraCaseOracleデータベースからAdvanced Serverデータベースに移行するときに、すべてのデータベースオブジェクトに対してOracleのデフォルトの大文字命名規則を保持するに は、 -useOraCase オプションを 含め ます。大文字の命名規則は、テーブル、ビュー、シーケンス、プロシージャ、ファンクション、トリガ、パッケージなどでは維持されます。これらのデータベースオブジェクトでは、大文字の命名規則がa)データベースオブジェクトの名前、b)列名、テーブルおよびビューのキー名、インデックス名、制約名など、c)ビューの SELECT 列リスト、およびd)プロシージャまたはファンクションヘッダーの一部であるパラメータ名。注: プロシージャ、関数、トリガ、またはパッケージの手続き型コード本体内で、プログラムがエラーなしで正しく実行されるようにするには、識別子参照を手動で編集する必要があります。このような訂正は、発生したかもしれないししなかったかもしれない識別子参照の適切な場合変換に関するものです。注意: とき -useOraCase オプションが指定され、 -skipUserSchemaCreation オプションも同様に指定する必要があります。詳しくは、 このセクションの -skipUserSchemaCreation オプションの 説明を参照してください 。Migration Toolkitのデフォルトの動作( -useOraCase オプション を使用し -useOraCase 場合)では、データベースオブジェクト名は引用符で囲まずにOracleから抽出されます(データベースオブジェクトが明示的に引用符で囲まれていない限り)。以下は、Migration Toolkitによって -offlineMigration オプションを指定 して生成されたテーブルDDLのサンプル部分です 。そのような望ましいアプリケーションの使用法については、 -useOraCase オプション を使用してマイグレーションを実行して -useOraCase 。 DDLには、引用符で囲まれたすべてのデータベースオブジェクト名が含まれています。- skipUserSchemaCreation仕様 -skipUserSchemaCreation オプションでは、移行したOracleユーザー名のこの自動、スキーマの作成を防止します。このオプションは 、1つのスキーマ名が小文字で、もう1つが大文字であることを除いて、同じ名前の2つのスキーマが作成されないようにするために -useOraCase オプションが指定されている 場合に特に役立ち ます。 -useOraCase オプションを 指定すると 、Migration Toolkitが呼び出されたときに、オプション・リストに従って指定されたソース・スキーマに対して、大文字のOracle命名規則でスキーマが作成されます。したがって、 -useOraCase オプションを指定せずに -skipUserSchemaCreation オプションを 指定した 場合、ターゲットデータベースでは、一方が小文字でもう一方が大文字の2つの同じ名前のスキーマが使用されます。場合 -useOraCase オプションが一緒に指定されている -skipUserSchemaCreation ターゲット・データベースの結果は大文字でだけでスキーマを持つには、オプション。
7.7 その他のオプション-logDir log_pathログファイルを書き込む場所を指定するには、このオプションを含めます。 log_pathは、アプリケーションログファイルが保存されているパスを表します。デフォルトでは、Linuxではログファイルは次の場所に書き込まれます。ログファイルのローテーションで使用されるファイルの数を指定するには、このオプションを含めます。ログファイルのローテーションを無効にして単一のログファイルを作成するには、値 0を指定します( logFileSizeオプションを使用して指定された値に達すると切り捨てられます)。 file_countは0以上でなければなりません。デフォルトは20です。失敗したオブジェクトのスキーマ定義(DDLスクリプト)をファイルに保存するには、このオプションを含めます。ファイルは、エラー・ログに使用されているのと同じパスの下に保存され、 mtk_bad_sql_ schemaname _ timestamp .sql という形式で命名され schemanameここで、 schemanameはスキーマの名前で、 timestampはMigration Toolkit実行のタイムスタンプです。
7.8 例スキップされサポートされていないデータベースオブジェクトの省略に注意してください。マイグレーション情報は 、実行の最後にMigration Summaryれています。
8 移行の問題
8.1 移行ツールキットの接続エラーMigration Toolkitは、 toolkit.propertiesファイルの情報を使用して、ソースデータベースとターゲットデータベースに接続します。 Migration Toolkitを使用しているときに発生する接続エラーのほとんどは、 toolkit.propertiesファイルに指定されている情報と関連があります。次のセクションを使用して一般的な接続エラーを識別し、それらを解決する方法を学びます。8.1.1 無効なユーザー名/パスワードtoolkit.propertiesファイルに指定されているユーザー名またはパスワードは、Oracleソースデータベースへの接続に使用するには無効です。このエラーを解決するには、 toolkit.propertiesファイルを編集して、 SRC_DB_USERおよびSRC_DB_PASSWORDプロパティで移行を実行するのに十分な特権を持つ有効なユーザーの名前とパスワードを指定します。8.1.2 接続が拒否されました:致命的:パスワードtoolkit.propertiesファイルで指定されたユーザー名またはパスワードは、Postgresデータベースへの接続に使用するには無効です。このエラーを解決するには、 toolkit.propertiesファイルを編集して、 TARGET_DB_USERおよびTARGET_DB_PASSWORDプロパティで移行を実行するのに十分な特権を持つ有効なユーザーの名前とパスワードを指定します。toolkit.propertiesファイルで指定されたユーザー名に関連付けられているOracleアカウントはロックされています。このエラーを解決するには、Oracleサーバー上のユーザーアカウントのロックを解除するか、 toolkit.propertiesファイルを編集して、移行を実行するのに十分な権限を持つ有効なユーザーの名前とパスワードをSRC_DB_USERおよびSRC_DB_PASSWORDパラメーターに指定します。Migration Toolkitを使用する前に、移行元のデータベースに適したJDBCドライバーをダウンロードしてインストールする必要があります。詳しい手順については、セクション4.3、 ソース固有のドライバのインストールを参照してください。toolkit.propertiesファイルで指定されたソースデータベースのJDBC URLに無効な接続プロパティが含まれています。このエラーを解決するには、 toolkit.propertiesファイルを編集し、 SRC_DB_URLプロパティにソースデータベースの有効な接続情報を指定します。特定のデータベース用のJDBC URLを作成する方法については、このドキュメントのセクション5.1から5.6を参照してください。toolkit.propertiesファイルで指定されたターゲットデータベース(Advanced Server)のJDBC URLに無効な接続プロパティが含まれています。このエラーを解決するには、 toolkit.propertiesファイルを編集し、 TARGET_DB_URLプロパティにターゲットデータベースの有効な接続情報を指定します。 Advanced Server用のJDBC URLの作成については、この文書のセクション5.1を参照してください。
8.2 移行ツールキットの移行エラー8.2.1 エラー:最後の予想列の後の追加データMTK-17001: Error Loading Data into Table: table_nameWhere: COPY table_name , line 5: "50|HR|LOS|ANGELES"注:この例では、最後の列への挿入を意図したテキストLOS|ANGELESにパイプ文字( | )が含まれており、Migration Toolkitは-copyDelimiter '|'を使用して実行されます-copyDelimiter '|'オプション、エラーになります。MTK-17001: Error Loading Data into Table: TABLE_NAMETrying to reload table: TABLE_NAME through bulk inserts with a batch size of 100MTK-17001: Error Loading Data into Table: TABLE_NAMEデータを移行する前に、ターゲットデータベースのデータを受信するためのテーブルを作成する必要があります。ターゲットデータベースに( TABLE_NAME という名前の ) テーブルが存在することを確認します。必要に応じてテーブルを作成し、データ移行を再試行してください。Migration Toolkitコマンドに-skipFKConstオプションを含めることで、エラーメッセージが生成されないようにすることができます。8.2.4 テーブルへのデータロードエラー8.2.5 エラー:型に対して値が長すぎますターゲットデータベースの列が、移行されたデータを受け取るのに十分な大きさではありません。この問題は、移行後にテーブル定義が変更された場合に発生する可能性があります。列名(この例では location_id )は、 ' Where :'で始まる行で識別されます。
場合によっては、Migration Toolkitは部分的な互換性を提供する機能を使用するオブジェクトを移行できます。それ以外の場合、Advanced Serverは適切な回避策をサポートしています。
• 外部テーブルはAdvanced Serverには存在しませんが 、データベース内のステージングテーブルにフラットテキストファイルをロードする ことができます。 EDB * Loaderユーティリティを使用してデータをAdvanced Serverデータベースにすばやくロードすることをお勧めします。
8.5 よくある質問Migration Toolkitは、OracleデータベースからAdvanced Serverへのパッケージの移行をサポートしています。 Advanced Serverが提供する移行サポートについては、セクション3、 機能 概要を参照してください 。Advanced Serverは現在 enum データ型を サポートしていません が、将来のリリースでそれらをサポートする予定です。それまでは、チェック制約を使用してAdvanced Serverデータベースに追加されるデータを制限できます。チェック制約は、列が取り得る有効値のリストを定義します。Postgresとは異なり、MySQLの TIME データ型では TIME または INTERVAL 値 を表す値を格納できます 。 INTERVAL 値 を表す MySQL TIME 列に 格納されている 値が、有効なPostgres TIMESTAMP 値の 許容範囲外である可能性があり ます。移行プロセス中に、Postgresが TIME データ列に 格納された値 が範囲外であると認識した場合、エラーを返します。
9 エラーコード
9.1 概要
特定のデータベースサーバからエラーが報告された場合は、このエラーメッセージの先頭に DB- が付きます 。たとえば、Postgresデータベースサーバの既存のテーブルが原因でテーブルの作成に失敗した場合、データベースサーバからエラーコード42P07が返されます。 Migration Toolkitログの特定のエラーはDB-42P07として表示されます。
9.2 エラーコードのまとめ以下のセクションでは、Migration Toolkitのエラーコードについて要約します。次の表で、[ Error Code ]列にMigration Toolkitのエラーコードを示します。 [ Message and Resolution ]列に、エラーコードと共に表示されるメッセージが含まれています。メッセージには、エラーの原因と解決方法が説明されています。
9.2.1 クラス02 - 警告
Warning! The offline migration path $ OFFLINE_PATH does not exist, the scripts will be created under the user home folder.
9.2.2 クラス10 - 無効なユーザー入力
as target schemas. These are used to store metadata information in information_schema , dbo , sys , or pg_catalog as target schemas. These are used to store metadata information in You cannot select as target schemas. These are used to store metadata information in $ DATABASE as target schemas. These are used to store metadata information in . escapeTabDelimiter option. , when using is required as a The ''\\t'' is required as a copyDelimiter is required as a option. The ' -dataOnly ' option is applicable only for -allTables / -tables option. Schema DDL cannot be copied when this option is in place. ' option is applicable only for option. Schema DDL cannot be copied when this option is in place. The -constraints , -indexes and -triggers options are applicable only in the context of -allTables / -tables option. The ' -customColTypeMapping ' and ' -customColTypeMappingFile ' options cannot be specified at the same time. Provided default date time must be in following format ' yyyy-MM-dd_HH:mm:ss '. Time portion is optional, to specify time, the underscore symbol ' Provided default date time must be in following format ' '. Time portion is optional, to specify time, the underscore symbol ' _ ' is necessary. Options ( -constraints | -indexes | -triggers | -tables | -views | -sequences | -procs | -funcs | -packages | -synonyms ) cannot be used with multiple schemas option. You have specified invalid command-line arguments. Run ' ' to see the usage details. You have specified invalid command-line arguments. Run ' runMTK -help ' to see the usage details. You have specified invalid command-line arguments. Run ' ' to see the usage details. option for offline data migration in COPY format. singleDataFile option for offline data migration in COPY format. Cannot use option for offline data migration in COPY format. $スキーマは、 cannot be used as schema name in の$ DATABASE . Choose a different schema name via -targetSchema option. . Choose a different schema name via option. $データベース database type is not supported by Migration Toolkit. Specify a valid database type string (ie, EnterpriseDB , Postgres , Oracle , SQLServer , Sybase , or MySQL ). $ DATABASE database is invalid. Check the connectivity credentials. The URL specified for the database is invalid. Check the connectivity credentials. The URL specified for the Oracle database is not supported by dblink_ora The URL specified for the Oracle database is not supported by . Check the connectivity credentials and provide a valid URL.
9.2.3 クラス11 - 設定の問題
Error while loading DBLink Ora module. $ DBLINKORA_MODULE . Verify that dblink_ora is installed/configured on target EnterpriseDB server. Please see the Database Compatibility for Oracle Developer's Guide for more information about installing and configuring the . Verify that dblink_ora is installed/configured on target EnterpriseDB server. Please see the Database Compatibility for Oracle Developer's Guide for more information about installing and configuring the dblink_ora module. is installed/configured on target EnterpriseDB server. Please see the Database Compatibility for Oracle Developer's Guide for more information about installing and configuring the module. Error while loading given DBLink_Ora module. $ DBLINKORA_MODULE . Verify that dblink_ora is installed/configured on target EnterpriseDB server. Please see the Database Compatibility for Oracle Developer's Guide for more information about installing and configuring the . Verify that dblink_ora is installed/configured on target EnterpriseDB server. Please see the Database Compatibility for Oracle Developer's Guide for more information about installing and configuring the dblink_ora module. is installed/configured on target EnterpriseDB server. Please see the Database Compatibility for Oracle Developer's Guide for more information about installing and configuring the module. The connection credentials file $ TOOLKIT_PROP_FILE is not secure and accessible to group/others users. This file contains plain passwords and should be restricted to Migration Toolkit owner user only.
9.2.4 クラス12 - 不十分な特権
The user/role migration failed due to insufficient privileges. Grant the user SELECT privilege on the following Oracle catalogs: DBA_ROLES , DBA_USERS , DBA_TAB_PRIVS , DBA_PROFILES , DBA_ROLE_PRIVS , ROLE_ROLE_PRIVS , DBA_SYS_PRIVS . The migration of privileges failed due to insufficient privileges. Grant the user privilege on the following Oracle catalog: The migration of privileges failed due to insufficient privileges. Grant the user SELECT privilege on the following Oracle catalog: dba_tab_privs .
9.2.5 クラス13 - サポートされていない機能
The given trigger is not migrated, the trigger has clause which is not supported by EnterpriseDB. The given trigger is not migrated, the trigger has WHEN clause which is not supported by EnterpriseDB. Skipping Database Link $ DATABASE_LINKを Skipping Database Link . EnterpriseDB currently does not support this type of Database Link. Warning! Skipping migration of trigger $ TRIGGERの Warning! Skipping migration of trigger , currently non-table triggers are not supported in target database. $ TYPE is Not Supported by COPY. Profile migration is not supported in $ SRC_DB to $ TARGET_DBへの permutation. Profile migration is not supported in permutation. The INTERVAL partition is not supported in $データベース , the table will be migrated without INTERVAL definition. Warning! User profile migration is not supported in target database version $ VERSION Warning! User profile migration is not supported in target database version . The profile " " for user " $ USER " will be skipped. . The profile " $ PROFILE " for user " " will be skipped.
9.2.6 クラス14 - 欠けているオブジェクト
One or more tables are missing from the source $ DATABASE database. One or more tables are missing from the source database. One or more tables couldn't be found in the source $ DATABASE database. With One or more tables couldn't be found in the source database. With -tables mode, the table name should be in uppercase unless it is case-sensitive. One or more users couldn't be found in the source $ DATABASE database. With One or more users couldn't be found in the source database. With -users mode, the user name should be in uppercase unless it is case-sensitive.
9.2.7 クラス15 - スキーマ移行
The linked schema $ LINKED_SCHEMA doesn't exist in the target database. Create the schema and then retry. Table name $ TABLEに does not have a schema qualifier. With multiple schema migration context, each table should be schema qualified.
9.2.8 クラス16 - 手続き型言語の移行
Package Body is invalid, skipping... Note: This error message also appears when a package specification is successfully migrated, but there is no corresponding package body in the source database. In this case, the package specification should function properly in the target database despite the appearance of the error message.
9.2.9 クラス17 - データロード
Error Loading Data into Table: $ TABLE