Ausführen der SSMA-Konsole (DB2ToSQL)

Microsoft bietet Ihnen einen robusten Satz von Skriptdateibefehlen zum Ausführen und Steuern von SSMA-Aktivitäten. In den folgenden Abschnitten wird das gleiche detailiert. Die Konsolenanwendung verwendet bestimmte Standardmäßige Skriptdateibefehle, die in diesem Abschnitt aufgelistet werden.

Project Script File Commands

Die Project-Befehle behandeln das Erstellen von Projekten, Öffnen, Speichern und Beenden von Projekten.

Befehl

create-new-project

Erstellt ein neues SSMA-Projekt.

Skript

  • project-folder gibt den Ordner des Projekts an, der erstellt wird.

  • project-name gibt den Namen des Projekts an. {string}

  • overwrite-if-existsOptionales Attribut gibt an, ob ein vorhandenes Projekt überschrieben werden soll. {boolean}

  • project-type:Optionales Attribut. Gibt den Projekttyp an, d. h. "sql-server-2005"-Projekt oder "sql-server-2008"-Projekt oder "sql-server-2012"-Projekt oder "sql-server-2014"-Projekt oder "sql-azure". Der Standardwert ist "sql-server-2014".

Beispiel:

<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>"   (optional)  
  
/>  

Das Attribut "overwrite-if-exists" ist standardmäßig "false ".

Das Attribut "project-type" ist standardmäßig sql-server-2008 .

Befehl

Open-Project

Öffnet ein vorhandenes Projekt.

Skript

  • project-folder gibt den Ordner des Projekts an, der erstellt wird. Der Befehl schlägt fehl, wenn der angegebene Ordner nicht vorhanden ist. {string}

  • project-name gibt den Namen des Projekts an. Der Befehl schlägt fehl, wenn das angegebene Projekt nicht vorhanden ist. {string}

Syntaxbeispiel:

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

SSMA für DB2-Konsolenanwendung unterstützt Abwärtskompatibilität. Sie können Projekte öffnen, die mit früherer Version von SSMA erstellt wurden.

Befehl

save-project

Speichert das Migrationsprojekt.

Skript

Syntaxbeispiel:

<save-project/>  

Befehl

Close-Project

Schließt das Migrationsprojekt.

Skript

Syntaxbeispiel:

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

Befehle der Datenbankverbindungsskriptdatei

Mit den Befehlen "Datenbankverbindung" können Sie eine Verbindung mit der Datenbank herstellen.

  • Das Feature "Durchsuchen " der Benutzeroberfläche wird in der Konsole nicht unterstützt.

  • Weitere Informationen zum Erstellen von Skriptdateien finden Sie unter Creating Script Files (OracleToSQL).

Befehl

connect-source-database

  • Führt eine Verbindung mit der Quelldatenbank aus und lädt Metadaten auf hoher Ebene der Quelldatenbank, aber nicht alle Metadaten.

  • Wenn die Verbindung mit der Quelle nicht hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.

Skript

Die Serverdefinition wird aus dem Namensattribut abgerufen, das für jede Verbindung im Serverabschnitt der Serververbindungsdatei oder der Skriptdatei definiert ist.

Syntaxbeispiel:

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

Befehl

force-load-source/target-database

  • Lädt die Quellmetadaten.

  • Nützlich für die Offlinearbeit am Migrationsprojekt.

  • Wenn die Verbindung mit der Quelle/dem Ziel nicht hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.

Skript

Erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.

Syntaxbeispiel:

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

oder

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

Befehl

Wiederherstellen der Verbindung zur Quelldatenbank

  • Stellt eine erneute Verbindung mit der Quelldatenbank her, lädt jedoch keine Metadaten im Gegensatz zum Befehl "Connect-source-database".

  • Wenn keine (re)Verbindung mit der Quelle hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.

Skript

Syntaxbeispiel:

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

Befehl

connect-target-database

  • Stellt eine Verbindung mit der ZIEL-SQL Server-Datenbank und lädt allgemeine Metadaten der Zieldatenbank, aber nicht vollständig die Metadaten.

  • Wenn die Verbindung mit dem Ziel nicht hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.

Skript

Die Serverdefinition wird aus dem Namensattribut abgerufen, das für jede Verbindung im Serverabschnitt der Serververbindungsdatei oder der Skriptdatei definiert ist.

Syntaxbeispiel:

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

Befehl

Erneutes Verbinden der Zieldatenbank

  • Stellt eine erneute Verbindung mit der Zieldatenbank her, lädt jedoch keine Metadaten, im Gegensatz zum Befehl "Connect-target-database".

  • Wenn keine (re)Verbindung mit dem Ziel hergestellt werden kann, wird ein Fehler generiert, und die Konsolenanwendung beendet die weitere Ausführung.

Skript

Syntaxbeispiel:

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

Befehle für Berichtsskriptdatei

Die Befehle "Bericht" generieren Berichte über die Leistung verschiedener SSMA-Konsolenaktivitäten.

Befehl

generate-assessment-report

  • Generiert Bewertungsberichte für die Quelldatenbank.

  • Wenn die Quelldatenbankverbindung vor dem Ausführen dieses Befehls nicht ausgeführt wird, wird ein Fehler generiert, und die Konsolenanwendung wird beendet.

  • Wenn während der Befehlsausführung keine Verbindung mit dem Quelldatenbankserver hergestellt werden kann, wird auch die Konsolenanwendung beendet.

Skript

  • conversion-report-folder: Gibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)

  • object-name: Gibt die Objekte an, die für die Generierung von Bewertungsberichten berücksichtigt werden (Es kann indivdual-Objektnamen oder einen Gruppenobjektnamen haben).

  • object-type: Gibt den Typ des objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").

  • conversion-report-overwrite: Gibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, wenn er bereits vorhanden ist.

    Standardwert: false. (optionales Attribut)

  • write-summary-report-to: Gibt den Pfad an, in dem der Zusammenfassungsbericht generiert wird.

    Wenn nur der Ordnerpfad erwähnt wird, wird die Datei mit dem Namen AssessmentReport<n.XML> erstellt. (optionales Attribut)

    Die Berichterstellung umfasst zwei weitere Unterkategorien:

    • report-errors (="true/false", standardmäßig als "false" (optionale Attribute))

    • verbose (="true/false", standardmäßig als "false" (optionale Attribute))

Syntaxbeispiel:

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

oder

<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>  

Befehle der Migrationsskriptdatei

Mit den Migrationsbefehlen wird das Zieldatenbankschema in das Quellschema konvertiert und Daten auf den Zielserver migriert. Die Standardeinstellung für die Konsolenausgabe für die Migrationsbefehle ist der Ausgabebericht "Vollständig" ohne detaillierte Fehlerberichterstattung: Nur Zusammenfassung auf dem Stammknoten der Quellobjektstruktur.

Befehl

convert-schema

  • Führt die Schemakonvertierung aus der Quelle in das Zielschema aus.

  • Wenn die Quell- oder Zieldatenbankverbindung nicht ausgeführt wird, bevor dieser Befehl ausgeführt wird oder die Verbindung mit dem Quell- oder Zieldatenbankserver während der Befehlsausführung fehlschlägt, wird ein Fehler generiert, und die Konsolenanwendung wird beendet.

Skript

  • conversion-report-folder: Gibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)

  • object-name: Gibt die quellobjekt(n) an, die für die Konvertierung des Schemas berücksichtigt werden (Es kann indivdual-Objektnamen oder einen Gruppenobjektnamen aufweisen).

  • object-type: Gibt den Typ des objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").

  • conversion-report-overwrite: Gibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, wenn er bereits vorhanden ist.

    Standardwert: false. (optionales Attribut)

  • write-summary-report-to: Gibt den Pfad an, in dem der Zusammenfassungsbericht generiert wird.

    Wenn nur der Ordnerpfad erwähnt wird, wird die Datei mit dem Namen SchemaConversionReport<n.XML> erstellt. (optionales Attribut)

    Die Berichterstellung umfasst zwei weitere Unterkategorien:

    • report-errors (="true/false", standardmäßig als "false" (optionale Attribute))

    • verbose (="true/false", standardmäßig als "false" (optionale Attribute))

Syntaxbeispiel:

<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)  
  
/>  

oder

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

Befehl

migrate-data: Migriert die Quelldaten zum Ziel.

Skript

  • conversion-report-folder: Gibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)

  • object-name: Gibt die Quellobjekt(n) an, die für die Migration von Daten berücksichtigt werden (Es kann indivdual-Objektnamen oder einen Gruppenobjektnamen enthalten).

  • object-type: Gibt den Typ des objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").

  • conversion-report-overwrite: Gibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, wenn er bereits vorhanden ist.

    Standardwert: false. (optionales Attribut)

  • write-summary-report-to: Gibt den Pfad an, in dem der Zusammenfassungsbericht generiert wird.

    Wenn nur der Ordnerpfad erwähnt wird, wird die Datei mit dem Namen DataMigrationReport<n.XML> erstellt. (optionales Attribut)

    Die Berichterstellung umfasst zwei weitere Unterkategorien:

    • report-errors (="true/false", standardmäßig als "false" (optionale Attribute))

    • verbose (="true/false", standardmäßig als "false" (optionale Attribute))

Syntaxbeispiel:

<migrate-data  
  
   write-summary-report-to="<file-name/folder-name>"  
  
   report-errors="<true/false>"  
  
   verbose="<true/false>">  
  
      <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>  

oder

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

Befehle für die Migrationsvorbereitungsskriptdatei

Der Befehl "Migrationsvorbereitung" initiiert die Schemazuordnung zwischen der Quell- und Zieldatenbank.

Befehl

Map-Schema

Schemazuordnung der Quelldatenbank zum Zielschema.

Skript

  • source-schema Gibt das Quellschema an, das migriert werden soll.

  • sql-server-schema Gibt das Zielschema an, in dem es migriert werden soll.

Syntaxbeispiel:

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

Befehl

Map-Schema

Schemazuordnung der Quelldatenbank zum Zielschema.

Skript

source-schema Gibt das Quellschema an, das migriert werden soll.

sql-server-schema Gibt das Zielschema an, in dem es migriert werden soll.

Syntaxbeispiel:

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

Befehle für die Verwaltbarkeitsskriptdatei

Die Befehle "Verwaltbarkeit" helfen beim Synchronisieren der Zieldatenbankobjekte mit der Quelldatenbank.

Die Standardeinstellung für die Konsolenausgabe für die Migrationsbefehle ist der Ausgabebericht "Vollständig" ohne detaillierte Fehlerberichterstattung: Nur Zusammenfassung auf dem Stammknoten der Quellobjektstruktur.

Befehl

synchronize-target

  • Synchronisiert die Zielobjekte mit der Zieldatenbank.

  • Wenn dieser Befehl für die Quelldatenbank ausgeführt wird, tritt ein Fehler auf.

  • Wenn die Zieldatenbankverbindung nicht ausgeführt wird, bevor dieser Befehl ausgeführt wird oder die Verbindung mit dem Zieldatenbankserver während der Befehlsausführung fehlschlägt, wird ein Fehler generiert, und die Konsolenanwendung wird beendet.

Skript

  • object-name: Gibt das Zielobjekt(n) an, das für die Synchronisierung mit der Zieldatenbank berücksichtigt wird (Er kann indivdual-Objektnamen oder einen Gruppenobjektnamen aufweisen).

  • object-type: Gibt den Typ des objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").

  • on-error: Gibt an, ob Synchronisierungsfehler als Warnungen oder Fehler angegeben werden sollen. Verfügbare Optionen für Fehler:

    • Report-total-as-warning

    • report-each-as-warning

    • fail-script

  • report-errors-to: Gibt den Speicherort des Fehlerberichts für den Synchronisierungsvorgang (optionales Attribut) an, wenn nur der Ordnerpfad angegeben wird, und die Datei mit dem Namen TargetSynchronizationReport.XML wird erstellt.

Syntaxbeispiel:

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

oder

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

oder

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

Befehl

refresh-from-database

  • Aktualisiert die Quellobjekte aus der Datenbank.

  • Wenn dieser Befehl für die Zieldatenbank ausgeführt wird, wird ein Fehler generiert.

Skript

Erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.

  • object-name: Gibt die Quellobjekt(n) an, die für die Aktualisierung aus der Quelldatenbank berücksichtigt werden (Es kann indivdual-Objektnamen oder einen Gruppenobjektnamen enthalten).

  • object-type: Gibt den Typ des Objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").

  • on-error: Gibt an, ob Aktualisierungsfehler als Warnungen oder Fehler angegeben werden sollen. Verfügbare Optionen für Fehler:

    • Report-total-as-warning

    • report-each-as-warning

    • fail-script

  • report-errors-to: Gibt den Speicherort des Fehlerberichts für den Aktualisierungsvorgang (optionales Attribut) an, wenn nur der Ordnerpfad angegeben wird, und die Datei mit dem Namen SourceDBRefreshReport.XML wird erstellt.

Syntaxbeispiel:

<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/folder-name>"   (optional)  
  
/>  

oder

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

oder

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

Skriptdateibefehle für die Skriptgenerierung

Die Befehle der Skriptgenerierung führen duale Aufgaben aus: Sie helfen, die Konsolenausgabe in einer Skriptdatei zu speichern; und notieren Sie die T-SQL-Ausgabe auf der Konsole oder einer Datei basierend auf dem von Ihnen angegebenen Parameter.

Befehl

save-as-script

Wird verwendet, um die Skripts der Objekte in einer Datei zu speichern, die beim Metabase=Target erwähnt wird. Dies ist eine Alternative zum Synchronisierungsbefehl, bei dem die Skripts abgerufen und in der Zieldatenbank identisch ausgeführt werden.

Skript

Erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.

  • object-name: Gibt die Objekte an, deren Skripts gespeichert werden sollen. (Es kann einzelne Objektnamen oder einen Gruppenobjektnamen enthalten)

  • object-type: Gibt den Typ des objekts an, das im Objektnamen-Attribut angegeben ist (wenn objektkategorie angegeben wird, lautet der Objekttyp "category").

  • metabase: Gibt an, ob es sich um die Quell- oder Zielmetabasis handelt.

  • destination: Gibt den Pfad oder den Ordner an, in dem das Skript gespeichert werden muss, wenn der Dateiname nicht angegeben wird, dann einen Dateinamen im Format (object_name Attributwert).out

  • overwrite: wenn "true" überschrieben wird, wenn derselbe Dateiname vorhanden ist. Er kann die Werte (true/false) aufweisen.

Syntaxbeispiel:

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

oder

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

Befehl

convert-sql-anweisung

  • context Gibt den Schemanamen an.

  • destination Gibt an, ob die Ausgabe in einer Datei gespeichert werden soll.

    Wenn dieses Attribut nicht angegeben ist, wird die konvertierte T-SQL-Anweisung auf der Konsole angezeigt. (optionales Attribut)

  • conversion-report-folder Gibt den Ordner an, in dem der Bewertungsbericht gespeichert werden kann. (optionales Attribut)

  • conversion-report-overwrite Gibt an, ob der Ordner "Bewertungsbericht" überschrieben werden soll, sofern er bereits vorhanden ist.

    Standardwert: false. (optionales Attribut)

  • write-converted-sql-to Gibt den Dateiordnerpfad (oder) an, in dem der konvertierte T-SQL gespeichert werden soll. Wenn ein Ordnerpfad zusammen mit dem sql-files Attribut angegeben wird, verfügt jede Quelldatei über eine entsprechende T-SQL-Zieldatei, die unter dem angegebenen Ordner erstellt wurde. Wenn ein Ordnerpfad zusammen mit dem sql Attribut angegeben wird, wird der konvertierte T-SQL in eine Datei namens "Result.out " unter dem angegebenen Ordner geschrieben.

  • sql Gibt die zu konvertierenden DB2-SQL-Anweisungen an, eine oder mehrere Anweisungen können durch ein ";" getrennt werden.

  • sql-files Gibt den Pfad der SQL-Dateien an, die in T-SQL-Code konvertiert werden müssen.

  • write-summary-report-to Gibt den Pfad an, in dem der Bericht generiert wird. Wenn nur der Ordnerpfad erwähnt wird, wird die Datei mit dem Namen ConvertSQLReport.XML erstellt. (optionales Attribut)

    Die Berichtserstellung umfasst 2 weitere Unterkategorien, viz..,:

    • report-errors (="true/false", mit Standard als "false" (optionale Attribute)).

    • ausführlich (="true/false", standardmäßig als "false" (optionale Attribute)).

Skript

Erfordert einen oder mehrere Metabasisknoten als Befehlszeilenparameter.

Syntaxbeispiel:

<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)  
  
   file-name="<file-name>"  
  
   sql="SELECT 1 FROM DUAL;">  
  
   <output-window suppress-messages="<true/false>" />  
  
</convert-sql-statement>  

oder

<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>"  
  
   destination="<stdout/file>"   (optional)  
  
   write-converted-sql-to="<file-name/folder-name>"  
  
   sql-files="<folder-name>\*.sql" />  

oder

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

Nächster Schritt

Informationen zu Befehlszeilenoptionen finden Sie unter Befehlszeilenoptionen in der SSMA-Konsole (DB2ToSQL).

Informationen zu Beispielkonsolenskriptdateien finden Sie unter Working with the Sample Console Script Files (DB2ToSQL)

Der nächste Schritt hängt von ihren Projektanforderungen ab: