Condividi tramite


Esecuzione della console SSMA (MySQLToSQL)

Microsoft offre un set affidabile di comandi di file di script per eseguire e controllare le attività SSMA.

L'applicazione console usa alcuni comandi di file di script standard come enumerati in questa sezione.

Comandi del file di script del progetto

Comando

crea-nuovo-progetto:
Crea un nuovo progetto SSMA.

I comandi project gestiscono la creazione di progetti, l'apertura, il salvataggio e l'uscita dei progetti.

Copione

  1. project-folder: indica la cartella del progetto creato.

  2. project-name: indica il nome del progetto. {string}

  3. overwrite-if-exists: attributo facoltativo. Indica se un progetto esistente deve essere sovrascritto. {boolean}

  4. project-type: attributo facoltativo. Indica il tipo di progetto, ad esempio "sql-server-2005" o il progetto "sql-server-2008" o "sql-server-2012" o "sql-server-2014" o "sql-azure". Il valore predefinito è "sql-server-2008".

Esempio di sintassi:

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

L'attributo 'overwrite-if-exists' è false per impostazione predefinita.

L'attributo 'project-type' è sql-server-2008 per impostazione predefinita.

Comando

open-project:
Apre un progetto esistente.

Copione

  1. project-folder indica la cartella del progetto creato. Il comando ha esito negativo se la cartella specificata non esiste. {string}

  2. project-name indica il nome del progetto. Il comando ha esito negativo se il progetto specificato non esiste. {string}

Esempio di sintassi:

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

Importante

L'applicazione console SSMA per MySQL supporta la compatibilità con le versioni precedenti. Sarà possibile aprire i progetti creati dalla versione precedente di SSMA.

Comando

save-project: salva il progetto di migrazione.

Copione

Esempio di sintassi:

<save-project/>  

Comando

chiudi-progetto
: chiude il progetto di migrazione.

Copione

Esempio di sintassi:

<save-project/>  

Comando

chiudi-progetto
: chiude il progetto di migrazione.

Copione

Esempio di sintassi:

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

L'attributo 'if-modified' è facoltativo, ignora per impostazione predefinita.

Comandi del file di script di Connessione di database

I comandi connessione al database consentono di connettersi al database.

  1. La funzionalità Sfoglia dell'interfaccia utente non è supportata nella console.

  2. I parametri di autenticazione e porta di Windows non sono applicabili per la connessione a SQL Azure.

  3. Per altre informazioni sulla creazione di file di script, vedere Creating Script Files (MySQLToSQL).

Comando

collega-database-di-origin

  • Esegue la connessione al database di origine e carica metadati di alto livello del database di origine, ma non tutti i metadati.

  • Se non è possibile stabilire la connessione all'origine, viene generato un errore e l'applicazione console interrompe l'esecuzione

Copione

La definizione del server viene recuperata dall'attributo nome definito per ogni connessione nella sezione server del file di connessione del server o dal file di script.

Esempio di sintassi:

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

Comando

carica-forzata-database-sorgente/obiettivo

  • Carica i metadati di origine.

  • Utile per lavorare offline al progetto di migrazione.

  • Se non è possibile stabilire la connessione all'origine/alla destinazione, viene generato un errore e l'applicazione console interrompe l'esecuzione.

Copione

Richiede uno o più nodi metabase come parametro della riga di comando.

Esempio di sintassi:

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

Comando

ricollega-database-sorgente

  1. Si riconnette al database di origine, ma non carica metadati a differenza del comando connect-source-database.

  2. Se non è possibile stabilire una nuova connessione con l'origine, viene generato un errore e l'applicazione console interrompe l'esecuzione.

Copione

Esempio di sintassi:

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

Comando

collega-database-di-destinazione

  1. Si connette al database SQL Server di destinazione o al database SQL di Azure e carica metadati di alto livello del database di destinazione, ma non completamente i metadati.

  2. Se non è possibile stabilire la connessione alla destinazione, viene generato un errore e l'applicazione console interrompe l'esecuzione.

Copione

La definizione del server viene recuperata dall'attributo name definito per ogni connessione nella sezione server del file di connessione del server o dal file di script

Esempio di sintassi:

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

Comando

riconnetti-database-di-destinazione

  1. Si riconnette al database di destinazione ma non carica metadati, a differenza del comando connect-target-database.

  2. Se non è possibile stabilire una nuova connessione alla destinazione, viene generato un errore e l'applicazione console interrompe l'esecuzione.

Copione

Esempio di sintassi:

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

Comandi del file di script di report

I comandi Report generano report sulle prestazioni di varie attività della console SSMA.

Comando

genera-report-di-valutazione

  1. Genera report di valutazione nel database di origine.

  2. Se la connessione al database di origine non viene eseguita prima dell'esecuzione di questo comando, viene generato un errore e l'applicazione console viene chiusa.

  3. L'errore di connessione al server di database di origine durante l'esecuzione del comando comporta anche la terminazione dell'applicazione console.

Copione

  1. assessment-report-folder: Specifica la cartella in cui è archiviato il report di valutazione. (attributo facoltativo)

  2. object-name: Specifica gli oggetti considerati per la generazione di report di valutazione (può avere nomi di oggetto singoli o un nome di oggetto di gruppo).

  3. object-type: Specifica il tipo dell'oggetto specificato nell'attributo object-name (se viene specificata la categoria di oggetti, allora il tipo di oggetto sarà "category").

  4. assessment-report-overwrite: Specifica se sovrascrivere la cartella del report di valutazione se esiste già.

    Valore predefinito: false. (attributo facoltativo)

  5. write-summary-report-to: Specifica il percorso in cui verrà generato il report di riepilogo.

    Se viene indicato solo il percorso della cartella, viene creato il file in base al nome AssessmentReport<n>.XML . (attributo facoltativo)

    La creazione di report include altre due sottocategorie:

    • report-errors (="true/false", con valore predefinito "false" (attributi facoltativi))

    • verbose (="true/false", con valore predefinito "false" (attributi facoltativi))

Esempio di sintassi:

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

o

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

Comandi del file di script di migrazione

I comandi di migrazione convertono lo schema del database di destinazione nello schema di origine ed eseguono la migrazione dei dati nel server di destinazione.

L'impostazione di output della console predefinita per i comandi di migrazione è un report di output "Completo" senza segnalazione di errori dettagliata: solo riepilogo nel nodo radice dell'albero degli oggetti di origine.

Comando

converti-schema

  1. Esegue la conversione dello schema dall'origine allo schema di destinazione.

  2. Se la connessione al database di origine o di destinazione non viene eseguita prima di eseguire questo comando o la connessione al server di database di origine o di destinazione non riesce durante l'esecuzione del comando, viene generato un errore e l'applicazione console viene chiusa.

Copione

  1. conversion-report-folder: Specifica la cartella in cui è archiviato il report di valutazione. (attributo facoltativo)

  2. object-name: Specifica gli oggetti considerati per la conversione dello schema (può avere singoli nomi di oggetto o un nome di oggetto di gruppo).

  3. object-type: Specifica il tipo dell'oggetto specificato nell'attributo object-name (se viene specificata la categoria di oggetti, allora il tipo di oggetto sarà "category").

  4. conversion-report-overwrite: Specifica se sovrascrivere la cartella del report di valutazione se esiste già.

    Valore predefinito: false. (attributo facoltativo)

  5. write-summary-report-to: Specifica il percorso in cui verrà generato il report di riepilogo.

    Se viene indicato solo il percorso della cartella, viene creato il file in base al nome SchemaConversionReport<n>.XML . (attributo facoltativo)

    La creazione di report di riepilogo include altre due sottocategorie:

    • report-errors (="true/false", con valore predefinito "false" (attributi facoltativi))

    • verbose (="true/false", con valore predefinito "false" (attributi facoltativi))

Esempio di sintassi:

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

o

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

Comando

migrare-dati

  1. Esegue la migrazione dei dati di origine alla destinazione.

Copione

  1. object-name: Specifica gli oggetti di origine considerati per la migrazione di dati (può avere singoli nomi di oggetto o un nome di oggetto gruppo).

  2. object-type: Specifica il tipo dell'oggetto specificato nell'attributo object-name (se viene specificata la categoria di oggetti, allora il tipo di oggetto sarà "category").

  3. write-summary-report-to: Specifica il percorso in cui verrà generato il report di riepilogo.

    Se viene indicato solo il percorso della cartella, viene creato il file in base al nome DataMigrationReport<n>.XML . (attributo facoltativo)

    La creazione di report include altre due sottocategorie:

    • report-errors (="true/false", con valore predefinito "false" (attributi facoltativi))

    • verbose (="true/false", con valore predefinito "false" (attributi facoltativi))

Esempio di sintassi:

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

o

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

Comando del file script di preparazione della migrazione

Il comando Preparazione migrazione avvia il mapping dello schema tra i database di origine e di destinazione.

Comando

schema della mappa

Mappatura dello schema del database di origine allo schema di destinazione.

Copione

  1. source-schema specifica lo schema di origine di cui si intende eseguire la migrazione.

  2. sql-server-schema specifica lo schema di destinazione di cui si vuole eseguire la migrazione.

Esempio di sintassi:

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

Comandi del file di script di gestibilità

I comandi di gestibilità consentono di sincronizzare gli oggetti di database di destinazione con il database di origine.

Annotazioni

L'impostazione di output della console predefinita per i comandi di migrazione è un report di output "Completo" senza segnalazione di errori dettagliata: solo riepilogo nel nodo radice dell'albero degli oggetti di origine.

Comando

synchronize-target

  1. Sincronizza gli oggetti di destinazione con il database di destinazione.

  2. Se questo comando viene eseguito sul database di origine, viene rilevato un errore.

  3. Se la connessione al database di destinazione non viene eseguita prima di eseguire questo comando o la connessione al server di database di destinazione non riesce durante l'esecuzione del comando, viene generato un errore e l'applicazione console viene chiusa.

Copione

  1. object-name: Specifica gli oggetti considerati per la sincronizzazione con il database di destinazione (può avere singoli nomi di oggetto o un nome di oggetto di gruppo).

  2. object-type: Specifica il tipo dell'oggetto specificato nell'attributo object-name (se viene specificata la categoria di oggetti, allora il tipo di oggetto sarà "category").

  3. on-error: Specifica se specificare gli errori di sincronizzazione come avvisi o errori. Opzioni disponibili per l'errore:

    • segnalare-totale-come-avviso

    • segnala ciascuno come avviso

    • fail-script

  4. report-errors-to: Specifica la posizione del report degli errori per l'operazione di sincronizzazione (attributo facoltativo) se viene specificato solo il percorso della cartella, quindi viene creato il file in base al nome TargetSynchronizationReport.XML.

Esempio di sintassi:

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

o

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

o

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

Comando

aggiorna dal database

  1. Aggiorna gli oggetti di origine dal database.

  2. Se questo comando viene eseguito sul database di destinazione, viene generato un errore.

Copione

  1. object-name: Specifica gli oggetti di origine considerati per l’aggiornamento dal database di origine (può avere singoli nomi di oggetto o un nome di oggetto gruppo).

  2. object-type: Specifica il tipo dell'oggetto specificato nell'attributo object-name (se viene specificata la categoria di oggetti, il tipo di oggetto sarà "category").

  3. on-error: Specifica se specificare gli errori di sincronizzazione come avvisi o errori. Opzioni disponibili per l'errore:

    • segnalare-totale-come-avviso

    • segnala ciascuno come avviso

    • fail-script

  4. report-errors-to: Specifica il percorso del report degli errori per l'operazione di sincronizzazione (attributo facoltativo) se viene specificato solo il percorso della cartella, quindi viene creato il file in base al nome SourceDBRefreshReport.XML .

Richiede uno o più nodi metabase come parametro della riga di comando.

Esempio di sintassi:

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

o

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

o

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

Comandi del file di script di generazione script

I comandi di generazione di script eseguono attività doppie: consentono di salvare l'output della console in un file di script e registrano l'output T-SQL nella console o in un file in base al parametro specificato.

Comando

save-as-script

Usato per salvare gli script degli oggetti in un file indicato quando metabase=target , si tratta di un'alternativa al comando di sincronizzazione in cui si ottengono gli script ed eseguono lo stesso nel database di destinazione.

Copione

Richiede uno o più nodi metabase come parametro della riga di comando.

  1. object-name: Specifica gli oggetti i cui script devono essere salvati. (Può avere singoli nomi di oggetto o un nome di oggetto gruppo)

  2. object-type: Specifica il tipo dell'oggetto specificato nell'attributo object-name (se viene specificata la categoria di oggetti, allora il tipo di oggetto sarà "category").

  3. metabase: Specifica se si tratta della metabase di origine o di destinazione.

  4. destination: Specifica il percorso o la cartella in cui deve essere salvato lo script; se il nome del file non viene assegnato, allora un nome file nel formato (valore dell'attributo object_name).out

  5. overwrite: se true, sovrascrive nel caso siano presenti gli stessi nomi di file. Può avere i valori (true/false).

Esempio di sintassi:

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

o

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

Comando

convert-sql-statement

  1. context specifica il nome dello schema.

  2. destination specifica se l'output deve essere archiviato in un file.

    Se questo attributo non viene specificato, nella console viene visualizzata l'istruzione T-SQL convertita. (attributo facoltativo)

  3. conversion-report-folder specifica la cartella in cui è archiviato il report di valutazione. (attributo facoltativo)

  4. conversion-report-overwrite Specifica se sovrascrivere la cartella del report di valutazione nel caso esista già.

    Valore predefinito: false. (attributo facoltativo)

  5. write-converted-sql-to specifica il percorso del file (o) della cartella in cui deve essere archiviato il T-SQL convertito. Quando viene specificato un percorso di cartella insieme all'attributo sql-files, ogni file di origine avrà un file T-SQL di destinazione corrispondente creato nella cartella specificata. Quando viene specificato un percorso di cartella insieme all'attributo sql , il T-SQL convertito viene scritto in un file denominato Result.out nella cartella specificata.

  6. sql specifica le istruzioni sql MySQL da convertire, è possibile separare una o più istruzioni usando ";"

  7. sql-files specifica il percorso dei file sql che devono essere convertiti in codice T-SQL.

  8. write-summary-report-to specifica il percorso in cui verrà generato il report di riepilogo. Se viene indicato solo il percorso della cartella, allora viene creato il file denominato ConvertSQLReport.XML. (attributo facoltativo)

    La creazione di report include 2 altre sottocategorie, viz..,:

    • report-errors (="true/false", con valore predefinito "false" (attributi facoltativi)).

    • verbose (="true/false", con valore predefinito impostato su "false" (attributi facoltativi)).

Copione

Richiede uno o più nodi metabase come parametro della riga di comando.

Esempio di sintassi:

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

o

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

o

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

Passaggio successivo

Per informazioni sulle opzioni della riga di comando, vedere Opzioni della riga di comando nella console SSMA (MySQLToSQL).

Per altre informazioni sui file di script della console di esempio, vedere Uso dei file di script della console di esempio (MySQLToSQL)

Il passaggio successivo dipende dai requisiti del progetto:

  1. Per specificare una password o un'esportazione/importazione di password, vedere Gestione delle password (MySQLToSQL).

  2. Per la generazione di report, vedere Generazione di report (MySQLToSQL).

  3. Per la risoluzione dei problemi nella console, vedere Risoluzione dei problemi (MySQLToSQL).For troubleshooting issues in console, see Troubleshooting (MySQLToSQL).