次の方法で共有


SSMA コンソールの実行 (MySQLToSQL)

Microsoft では、SSMA アクティビティを実行と制御するための堅牢なスクリプト ファイル コマンドのセットを提供しています。

コンソール アプリでは、このセクションで列挙されているように、特定の標準スクリプト ファイル コマンドを使用します。

プロジェクト スクリプト ファイルのコマンド

Command

create-new-project
新しい SSMA プロジェクトを作成します。

プロジェクト コマンドは、プロジェクトの作成、プロジェクトのオープン、保存、と終了を処理します。

[スクリプト]

  1. project-folder は、作成されるプロジェクトのフォルダーを示します。

  2. project-name はプロジェクトのファイル名を示します。 {string}

  3. overwrite-if-exists オプションの属性は、既存のプロジェクトを上書きするかどうかを示します。 {boolean}

  4. project-type: オプションの属性です。 プロジェクトの種類 ("sql-server-2005" プロジェクト、"sql-server-2008" プロジェクト、"sql-server-2012" または "sql-server-2014" プロジェクト、または "sql-azure" プロジェクト) を示します。 既定値は "sql-server-2008" です。

構文の例:

<create-new-project  
  
   project-folder="<project-folder>"  
  
   project-name="<project-name>"  
  
   overwrite-if-exists="<true/false>"   (optional)  
  
   project-type=="<sql-server-2008 | sql-server-2005 | sql-server-2012 | sql-server-2014 | sql-azure>"   (optional)  
  
/>  

属性 "overwrite-if-exists" は既定では false です。

属性 "project-type" は 既定では sql-server-2008 です。

Command

プロジェクトを開く
既存のプロジェクトを開きます。

[スクリプト]

  1. project-folder は、作成されるプロジェクトのフォルダーを示します。 指定したフォルダーが存在しない場合、コマンドは失敗します。 {string}

  2. project-name はプロジェクトのファイル名を示します。 指定したプロジェクトが存在しない場合、コマンドは失敗します。 {string}

構文の例:

<open-project  
  
   project-folder="<project-folder>"  
  
   project-name="<project-name>"  
  
/>  

重要

SSMA For MySQL コンソール アプリでは、下位互換性がサポートされています。 以前のバージョンの SSMA によって作成されたプロジェクトを開くことができます。

Command

save-project: 移行プロジェクトを保存します。

[スクリプト]

構文の例:

<save-project/>  

Command

close-project
: 移行プロジェクトを閉じます。

[スクリプト]

構文の例:

<save-project/>  

Command

close-project
: 移行プロジェクトを閉じます。

[スクリプト]

構文の例:

<close-project  
  
   if-modified="<save/error/ignore>"   (optional)  
  
/>  

属性 'if-modified' はオプションであり、既定では無視されます。

データベース接続スクリプト ファイルのコマンド

データベース接続コマンドは、データベースへの接続に役立ちます。

  1. UI の [Browse] (参照) 機能は、コンソールではサポートされていません。

  2. WINDOWS 認証ポート パラメーターは、SQL Azure に接続するときに適用されません。

  3. 「スクリプト ファイルの作成」の詳細については、「スクリプト ファイルの作成 (SybaseToSQL)」を参照してください。

Command

connect-source-database

  • このコマンドは、ソース データベースへの接続を実行し、ソース データベースの高レベルのメタデータを読み込みますが、すべてのメタデータを読み込むわけではありません。

  • ソースへの接続を確立できない場合は、エラーが発生し、コンソール アプリケーションはそれ以降の実行を停止します。

[スクリプト]

サーバー定義は、サーバー接続ファイルまたはスクリプト ファイルのサーバー セクションの接続ごとに定義された名前属性から取得されます。

構文の例:

<connect-source-database  server="<server-unique-name>"/>  

Command

force-load-source/target-database

  • ソース メタデータを読み込みます。

  • 移行プロジェクトをオフラインで扱う場合に便利です。

  • ソース/ターゲットへの接続を確立できない場合は、エラーが発生し、コンソール アプリケーションはそれ以降の実行を停止します。

[スクリプト]

コマンド ライン パラメーターとして 1 つまたは複数のメタベース ノードが必要です。

構文の例:

<force-load metabase="<source/target>"  
  
      <metabase-object object-name="<object-name>"/>  
  
</force-load>  

Command

reconnect-source-database

  1. ソース データベースに再接続しますが、connect-source-database コマンドとは異なり、メタデータは読み込まれません。

  2. ソースとの (再) 接続を確立できない場合は、エラーが生成され、コンソール アプリはそれ以降の実行を停止します。

[スクリプト]

構文の例:

<reconnect-source-database  server="<server-unique-name>"/>  

Command

connect-target-database

  1. ターゲット SQL Server データベースに接続し、ターゲット データベースの高レベルのメタデータを読み込みますが、メタデータ全体は読み込まれません。

  2. ターゲットへの接続を確立できない場合は、エラーが生成され、コンソール アプリケーションはそれ以降の実行を停止します。

[スクリプト]

サーバー定義は、サーバー接続ファイルまたはスクリプト ファイルのサーバー セクションの接続ごとに定義された名前属性から取得されます。

構文の例:

<connect-target-database  server="<server-unique-name>"/>  

Command

reconnect-target-database

  1. connect-target-database コマンドとは異なり、ターゲット データベースに再接続しますが、メタデータは読み込まれません。

  2. ターゲットへの (再) 接続を確立できない場合は、エラーが生成され、コンソール アプリはそれ以降の実行を停止します。

[スクリプト]

構文の例:

<reconnect-target-database  server="<server-unique-name>"/>  

レポート スクリプト ファイルのコマンド

レポート コマンドは、さまざまな SSMA コンソール アクティビティのパフォーマンスに関するレポートを生成します。

Command

generate-assessment-report

  1. ソース データベースの評価レポートを生成します。

  2. このコマンドを実行する前にソース データベース接続が実行されていない場合は、エラーが生成され、コンソール アプリが終了します。

  3. コマンドの実行中にソース データベース サーバーに接続できないと、コンソール アプリも終了します。

[スクリプト]

  1. assessment-report-folder: 評価レポートを格納できるフォルダーを指定します(オプションの属性)。

  2. object-name: 評価レポートの生成で考慮されるオブジェクトを指定します (個々のオブジェクト名またはグループ オブジェクト名を指定できます)。

  3. object-type: は、object-name 属性で指定されたオブジェクト型を指定します (オブジェクト カテゴリが指定されている場合、オブジェクト型は "category" になります)。

  4. assessment-report-overwrite: 評価レポート フォルダーが既に存在する場合に上書きするかどうかを指定します。

    既定値: false (オプションの属性)

  5. write-summary-report-to: 要約レポートを生成するパスを指定します。

    フォルダー パスのみが指定されている場合は、AssessmentReport<n>.XML という名前のファイルが作成されます。 (オプションの属性)

    レポートの作成には、さらに 2 つのサブカテゴリがあります。

    • report-errors (="true/false"、既定では "false" (オプションの属性))

    • verbose (="true/false"、既定では "false" (オプションの属性))

構文の例:

<generate-assessment-report  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
/>  

or

<generate-assessment-report  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
>  
  
      <metabase-object object-name="<object-name>"  
  
         object-type="<object-category>"/>  
  
</generate-assessment-report>  

移行スクリプト ファイルのコマンド

移行コマンドは、ターゲット データベース スキーマをソース スキーマに変換し、データをターゲット サーバーに移行します。

移行コマンドの既定のコンソール出力設定は "全" 出力レポートで、詳細なエラー 報告はなく、ソース オブジェクト ツリーのルート ノードの概要のみです。

Command

convert-schema

  1. ソースからターゲット スキーマへのスキーマ変換を実行します。

  2. このコマンドを実行する前にソースまたはターゲットのデータベース接続が実行されていない場合、またはコマンドの実行中にソースまたはターゲット データベース サーバーへの接続が失敗した場合は、エラーが生成され、コンソール アプリが終了します。

[スクリプト]

  1. conversion-report-folder: 評価レポートを格納できるフォルダーを指定します(オプションの属性)。

  2. object-name: スキーマの変換対象と見なされるオブジェクトを指定します (個々のオブジェクト名またはグループ オブジェクト名を指定できます)。

  3. object-type: は、object-name 属性で指定されたオブジェクト型を指定します (オブジェクト カテゴリが指定されている場合、オブジェクト型は "category" になります)。

  4. conversion-report-overwrite: 評価レポート フォルダーが既に存在する場合に上書きするかどうかを指定します。

    既定値: false (オプションの属性)

  5. write-summary-report-to: 要約レポートを生成するパスを指定します。

    フォルダー パスのみが指定されている場合は、SchemaConversionReport<n>.XML という名前のファイルが作成されます。 (オプションの属性)

    要約レポートの作成には、さらに次の 2 つのサブカテゴリがあります。

    • report-errors (="true/false"、既定では "false" (オプションの属性))

    • verbose (="true/false"、既定では "false" (オプションの属性))

構文の例:

<convert-schema  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
/>  

or

<convert-schema  
  
   conversion-report-folder="<folder-name>"   (optional)  
  
   conversion-report-overwrite="<true/false>"   (optional)  
  
      <metabase-object object-name="<object-names>"  
  
         object-type="<object-category>"/>  
  
</convert-schema>  

Command

データの移行

  1. ソースからターゲットにデータを移行します。

[スクリプト]

  1. object-name: データの移行を検討するソース オブジェクトを指定します (個々のオブジェクト名またはグループ オブジェクト名を持つことができます)。

  2. object-type: は、object-name 属性で指定されたオブジェクト型を指定します (オブジェクト カテゴリが指定されている場合、オブジェクト型は "category" になります)。

  3. write-summary-report-to: 要約レポートを生成するパスを指定します。

    フォルダー パスのみが指定されている場合は、DataMigrationReport<n>.XML という名前のファイルが作成されます。 (オプションの属性)

    レポートの作成には、さらに 2 つのサブカテゴリがあります。

    • report-errors (="true/false"、既定では "false" (オプションの属性))

    • verbose (="true/false"、既定では "false" (オプションの属性))

構文の例:

<migrate-data  
  
   write-summary-report-to="<file-name/folder-name>"  
  
   report-errors="true" verbose="true">  
  
      <metabase-object object-name="<object-name>"/>  
  
      <metabase-object object-name="<object-name>"/>  
  
      <metabase-object object-name="<object-name>"/>  
  
      <data-migration-connection  
  
         source-use-last-used="true"/source-server="<server-unique-name>"  
  
         target-use-last-used="true"/target-server="<server-unique-name>"/>  
  
</migrate-data>  

or

<migrate-data  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   write-summary-report-to="<file-name/folder-name>"  
  
   report-errors="true" verbose="true"/>  

移行準備スクリプト ファイル コマンド

移行準備コマンドは、ソース データベースとターゲット データベース間のスキーマ マッピングを開始します。

Command

map-schema

ソース データベースからターゲット スキーマへのスキーマ マッピング。

[スクリプト]

  1. source-schema は、移行するソース スキーマを指定します。

  2. sql-server-schema は、移行するターゲット スキーマを指定します。

構文の例:

<map-schema  
  
   source-schema="<source-schema>"  
  
   sql-server-schema="<target-schema>"/>  

管理性スクリプト ファイル のコマンド

管理性コマンドは、ターゲット データベース オブジェクトをソース データベースと同期するのに役立ちます。

注意

移行コマンドの既定のコンソール出力設定は "全" 出力レポートで、詳細なエラー 報告はなく、ソース オブジェクト ツリーのルート ノードの概要のみです。

Command

データの同期

  1. ターゲット オブジェクトをターゲット データベースと同期します。

  2. ソース データベースに対してこのコマンドを実行すると、エラーが発生します。

  3. このコマンドを実行する前にターゲット データベース接続が実行されなかった場合、またはコマンドの実行中にターゲット データベース サーバーへの接続が失敗した場合は、エラーが生成され、コンソール アプリが終了します。

[スクリプト]

  1. object-name: ターゲット データベースとの同期を検討するオブジェクトを指定します (個々のオブジェクト名またはグループ オブジェクト名を指定できます)。

  2. object-type: は、object-name 属性で指定されたオブジェクト型を指定します (オブジェクト カテゴリが指定されている場合、オブジェクト型は "category" になります)。

  3. on-error: 同期エラーを警告またはエラーとして指定するかどうかを指定します。 on-error で使用できるオプション:

    • report-total-as-warning

    • report-each-as-warning

    • fail-script

  4. report-errors-to: フォルダー パスのみを指定し、TargetSynchronizationReport.XML という名前のファイルを作成する場合に、同期操作のエラー レポートの場所 (オプションの属性) を指定します。

構文の例:

<synchronize-target  
  
   object-name="<object-name>"  
  
   on-error="<report-total-as-warning/  
  
               report-each-as-warning/  
  
               fail-script>"   (optional)  
  
   report-errors-to="<file-name>"   (optional)  
  
/>  

or

<synchronize-target  
  
   object-name="<object-name>"  
  
  object-type="<object-category>"/>  

or

<synchronize-target>  
  
   <metabase-object object-name="<object-name>"/>  
  
   <metabase-object object-name="<object-name>"/>  
  
   <metabase-object object-name="<object-name>"/>  
  
</synchronize-target>  

Command

refresh-from-database

  1. データベースのソース オブジェクトを更新します。

  2. このコマンドがターゲット データベースに対して実行されると、エラーが発生します。

[スクリプト]

  1. object-name: ソース データベースからの更新対象のソース オブジェクトを指定します (個々のオブジェクト名またはグループ オブジェクト名を指定できます)。

  2. object-type:は、object-name 属性で指定されたオブジェクト型を指定します (オブジェクト カテゴリが指定されている場合、オブジェクト型は "category" になります)。

  3. on-error: 同期エラーを警告またはエラーとして指定するかどうかを指定します。 on-error で使用できるオプション:

    • report-total-as-warning

    • report-each-as-warning

    • fail-script

  4. report-errors-to: フォルダー パスのみを指定し、SourceDBRefreshReport.XML という名前のファイルを作成する場合に、同期操作のエラー レポートの場所 (オプションの属性) を指定します。

コマンド ライン パラメーターとして 1 つまたは複数のメタベース ノードが必要です。

構文の例:

<refresh-from-database  
  
   object-name="<object-name>"  
  
   on-error="<report-total-as-warning/  
  
               report-each-as-warning/  
  
               fail-script>"   (optional)  
  
   report-errors-to="<file-name>"   (optional)  
  
/>  

or

<refresh-from-database  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"/>  

or

<refresh-from-database>  
  
   <metabase-object object-name="<object-name>"/>  
  
</refresh-from-database>  

スクリプト生成スクリプト ファイルのコマンド

スクリプト生成コマンドは、コンソール出力をスクリプト ファイルに保存するのを支援し、指定したパラメーターに基づいてコンソールまたはファイルに T-SQL 出力を記録するという、2 つのタスクを実行します。

Command

save-as-script

メタベースがターゲットの場合に指定されたファイルにオブジェクトのスクリプトを保存するために使用されます。これは、スクリプトを取得してターゲットデータベースで同じように実行する同期コマンドの代わりに使用されます。

[スクリプト]

コマンド ライン パラメーターとして 1 つまたは複数のメタベース ノードが必要です。

  1. object-name: スクリプトを保存するオブジェクトを指定します。 (個々のオブジェクト名またはグループ オブジェクト名を指定できます)

  2. object-type: は、object-name 属性で指定されたオブジェクト型を指定します (オブジェクト カテゴリが指定されている場合、オブジェクト型は "category" になります)。

  3. metabase: ソース メタベースかターゲット メタベースかを指定します。

  4. destination: スクリプトを保存する必要があるパスまたはフォルダーを指定します。ファイル名が指定されていない場合は、ファイル名を形式 (object_name 属性値) で指定します。

  5. overwrite: true の場合、同じファイル名が存在する場合に上書きされます。 値 (true/false) を指定できます。

構文の例:

<save-as-script  
  
   metabase="<source/target>"  
  
   object-name="<object-name>"  
  
   object-type="<object-category>"  
  
   destination="<file-name/folder-name>"  
  
   overwrite="<true/false>"   (optional)  
  
/>  

or

<save-as-script  
  
   metabase="<source/target>"  
  
   destination="<file-name/folder-name>"  
  
      <metabase-object object-name="<object-name>"  
  
            object-type="<object-category>"/>  
  
</save-as-script>  

Command

convert-sql-statement

  1. context はスキーマ名を指定します。

  2. destination は、出力をファイルに格納するかどうかを指定します。

    この属性が指定されていない場合は、変換された T-SQL ステートメントがコンソールに表示されます。 (オプションの属性)

  3. conversion-report-folder は、評価レポートを格納できるフォルダーを指定します (オプションの属性)。

  4. conversion-report-overwrite 評価レポート フォルダーが既に存在する場合に上書きするかどうかを指定します。

    既定値: false (オプションの属性)

  5. write-converted-sql-to は、変換された T-SQL が格納されるファイル (または) フォルダーのパスを指定します。 sql-files 属性と共にフォルダー パスを指定すると、各ソース ファイルでは、指定したフォルダーの下に対応するターゲット T-SQL ファイルが作成されます。 sql 属性と共にフォルダー パスを指定すると、変換された T-SQL は、指定したフォルダーの下にある Result.out という名前のファイルに書き込まれます。

  6. sql は、変換する MySQL SQL ステートメントを指定します。1 つ以上のステートメントを ";" を使用して区切ることができます。

  7. sql-files は、T-SQL コードに変換する必要がある SQL ファイルのパスを指定します。

  8. write-summary-report-to は、要約レポートが生成されるパスを指定します。 フォルダー パスのみが指定されている場合は、ConvertSQLReport.XML という名前のファイルが作成されます。 (オプションの属性)

    レポートの作成には、さらに次の 2 つのサブカテゴリがあります。

    • report-errors (="true/false"、既定では "false" (省略可能な属性))。

    • verbose (="true/false"、既定では "false" (省略可能な属性))。

[スクリプト]

コマンド ライン パラメーターとして 1 つまたは複数のメタベース ノードが必要です。

構文の例:

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   destination="stdout/file"   (optional)  
  
   write-converted-sql-to="<file-name/folder-name>"  
  
   sql="SELECT 1 FROM DUAL;">  
  
      <output-window suppress-messages="<true/false>" />  
  
</convert-sql-statement>  

or

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   write-summary-report-to="<file-name/folder-name>"   (optional)  
  
   verbose="<true/false>"   (optional)  
  
   report-errors="<true/false>"   (optional)  
  
   destination="<stdout/file>"   (optional)  
  
   write-converted-sql-to="<file-name/folder-name>"  
  
   sql-files="<folder-name>\*.sql"  
  
/>  

or

<convert-sql-statement  
  
   context="<schema-name>"  
  
   conversion-report-folder="<folder-name>"  
  
   conversion-report-overwrite="<true/false>"  
  
   sql-files="<folder-name>\*.sql"  
  
/>  

次の手順

コマンド ライン オプションの詳細については、「SSMA コンソールのコマンド ライン オプション (AccessToSQL)」を参照してください。

サンプル コンソール スクリプト ファイルの詳細については、「サンプルのコンソール スクリプト ファイルの操作 (MySQLToSQL)」を参照してください 。

次の手順は、プロジェクトの要件によって異なります。

  1. パスワードの指定またはパスワードのエクスポート/インポートについては、「パスワードの管理 (MySQLToSQL)」を参照してください。

  2. レポートの生成の詳細については、レポートの生成 (MySQLToSQL) を参照してください。

  3. コンソールでの問題のトラブルシューティングについては、「トラブルシューティング (MySQLToSQL)」を参照してください。