View a markdown version of this page

Oracle から MySQL へのコンバージョン設定 - AWS データベース移行サービス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Oracle から MySQL へのコンバージョン設定

ソースが Oracle で、ターゲットが Amazon RDS for MySQL または Amazon Aurora MySQL の場合、次の設定が適用されます。これらの設定は、 AWS マネジメントコンソール または ModifyConversionConfiguration API オペレーションを使用して設定できます。

このトピックでは、Oracle から MySQL への変換パスに固有の設定について説明します。これらの設定に加えて、DMS Schema Conversion は、変換された SQL のアクション項目コメントの重要度レベルや変換に生成 AI を使用するオプションなど、すべてのソースとターゲットのペアに適用される設定を提供します。これらの設定については、「」を参照してください一般的な変換設定

API または CLI AWS を使用する場合は、セクション名 で変換パス設定を指定しますORACLE_TO_MYSQL。プロジェクトが使用するセクション名を確認するには、最初に DescribeConversionConfiguration を呼び出し、レスポンスに含まれるセクションのみを更新します。

各設定には、 AWS マネジメントコンソール ラベルの後に API および CLI AWS パラメータ名が括弧内に表示されます。API または CLI で設定を構成するときは、 AWS パラメータ名を使用します。

行 ID の生成 (GenerateRowId)

ソースの Oracle データベースでは、ROWID 疑似列を使用できるが、MySQL は同様の機能をサポートしていない。この設定では、DMS Schema Conversion が変換されたコードのROWID擬似列をエミュレートするかどうかを指定します。

コンソールラベル API/CLI 値 動作
生成しない false DMS Schema Conversion ROWID は擬似列をエミュレートせず、参照をアクション項目として残します。ソース Oracle コードが を使用しない場合に使用しますROWID。変換されたコードはより速く実行されます。
bigint データ型を使用して ROWID 擬似列をエミュレートする true DMS Schema Conversion は、 bigint データ型を使用して、変換されたコードのROWID擬似列をエミュレートします。

タイプ: ブール値 (true | false)

デフォルト: false

注記

Oracle から MySQL への変換パスの場合、 GenerateRowIdはブール値 (true | false) であり、bigintデータ型のみを使用してROWID擬似列をエミュレートします。Oracle から PostgreSQL への変換パスの場合、同じ設定は、エミュレーションオプション () character varying も提供する文字列列挙型ですGENERATE_AS_CHARACTER_DOMAIN_TYPE。詳細については、「Oracle から PostgreSQL へのコンバージョン設定」を参照してください。

関数変換設定

デフォルトでは、DMS Schema Conversion は変換されたコードで Oracle 変換関数をエミュレートして、結果が Oracle の動作と一致するようにします。ソースコードが Oracle 固有のフォーマットに依存していない場合は、代わりにこれらの関数をネイティブ MySQL に相当するものに変換できます。ネイティブ関数はより高速に実行されるため、これらのオプションは、使用状況が MySQL と互換性があることを確認した後にtrueのみ に設定します。

ネイティブ MySQL TO_CHAR 関数を使用する (ToCharFunctionOracle)

DMS Schema Conversion が Oracle 固有のフォーマットをエミュレートするのではなく、Oracle TO_CHAR関数呼び出しをネイティブ MySQL 関数に変換するかどうかを指定します。

  • false — DMS Schema Conversion は、変換されたコードTO_CHAR内の の Oracle 固有のフォーマットをエミュレートします。

  • true — 呼び出しはネイティブ MySQL TO_CHAR関数に変換されます。ソースコードが Oracle 固有の形式文字列を使用しない場合に使用します。

タイプ: ブール値 (true | false)

デフォルト: false

ネイティブ MySQL TO_DATE 関数を使用する (ToDateFunctionOracle)

DMS Schema Conversion が Oracle 固有のフォーマットをエミュレートするのではなく、Oracle TO_DATE関数呼び出しをネイティブ MySQL 関数に変換するかどうかを指定します。

  • false — DMS Schema Conversion は、変換されたコードTO_DATE内の の Oracle 固有のフォーマットをエミュレートします。

  • true — 呼び出しはネイティブ MySQL TO_DATE関数に変換されます。ソースコードが Oracle 固有の形式文字列を使用しない場合に使用します。

タイプ: ブール値 (true | false)

デフォルト: false

ネイティブ MySQL TO_NUMBER 関数を使用する (ToNumber)

DMS Schema Conversion が Oracle 固有のフォーマットをエミュレートするのではなく、Oracle TO_NUMBER関数呼び出しをネイティブ MySQL 関数に変換するかどうかを指定します。

  • false — DMS Schema Conversion は、変換されたコードTO_NUMBER内の の Oracle 固有のフォーマットをエミュレートします。

  • true — 呼び出しはネイティブ MySQL TO_NUMBER関数に変換されます。ソースコードが Oracle 固有の形式文字列を使用しない場合に使用します。

タイプ: ブール値 (true | false)

デフォルト: false

データベースとアプリケーションが同じタイムゾーンを使用する変換されたコードのパフォーマンスを向上させる (ToTimeZone)

DMS Schema Conversion が変換されたコードのタイムゾーンをエミュレートするかどうかを指定します。

  • true — DMS Schema Conversion はタイムゾーンをエミュレートしません。これは、データベースとアプリケーションが同じタイムゾーンを使用する場合に使用します。変換されたコードはより速く実行されます。

  • false — DMS Schema Conversion は、変換されたコードのタイムゾーンをエミュレートします。

タイプ: ブール値 (true | false)

デフォルト: false

例: Oracle から MySQL への設定を構成する

次の例では、Oracle 変換関数を ORACLE_TO_MYSQLセクションのネイティブ MySQL 同等の関数に変換します。

{ "ORACLE_TO_MYSQL": { "ToCharFunctionOracle": true, "ToDateFunctionOracle": true, "ToNumber": true } }