Sdílet prostřednictvím


Vytváření souborů skriptu (Db2ToSQL)

Než budete moct spustit konzolovou aplikaci SQL Server Migration Assistant (SSMA), musíte vytvořit soubor skriptu. V případě potřeby můžete také vytvořit soubor hodnoty proměnné a soubor připojení k serveru.

Soubor skriptu je možné rozdělit do tří částí:

Oddíl Popis
config Nastavte konfigurační parametry pro konzolovou aplikaci.
servers Nastavte definice zdrojového nebo cílového serveru. Může být také v samostatném souboru sloužícím k připojení k serveru.
script-commands Spusťte příkazy pracovního postupu SSMA.

Jednotlivé části jsou podrobně popsány v tomto článku.

Konfigurace nastavení konzolové aplikace SSMA

Konfigurace skriptu se zobrazí v souboru skriptu konzoly.

Pokud je některý z prvků zadaný v konfiguračním uzlu, nastaví se jako globální nastavení. Jinými slovy platí pro všechny příkazy skriptu. Pokud chcete přepsat globální nastavení, je možné tyto konfigurační prvky nastavit také v rámci každého příkazu v části skriptu-příkaz.

Mezi možnosti konfigurovatelné uživatelem patří:

  1. poskytovatele výstupního okna: Pokud je atribut suppress-messages nastavený na true, nezobrazí se v konzole zprávy specifické pro příkazy.

    Atribut Popis
    destination Určuje, jestli se výstup musí vytisknout do souboru nebo stdoutu. false ve výchozím nastavení.
    file-name (volitelné) Cesta k souboru.
    suppress-messages Potlačí zprávy v konzole. false ve výchozím nastavení.

    Příklad :

    <output-providers>
      <output-window
        suppress-messages="<true/false>"   (optional)
        destination="<file/stdout>"        (optional)
        file-name="<file-name>"            (optional)
       />
    </output-providers>
    

    nebo

    <...All commands...>
      <output-window
         suppress-messages="<true/false>"   (optional)
         destination="<file/stdout>"        (optional)
         file-name="<file-name>"            (optional)
       />
    </...All commands...>
    
  2. Poskytovatel připojení pro migraci dat: Určuje, který zdrojový/cílový server má být použit pro migraci dat. Použití zdroje označuje, že k migraci dat se používá poslední použitý zdrojový server. Podobně použití typu target-use-last-used označuje, že poslední použitý cílový server se používá k migraci dat. Server (zdroj nebo cíl) můžete také zadat pomocí atributů zdrojový server nebo cílový server.

    Najednou lze nastavit pouze jeden z těchto atributů:

    • source-use-last-used="true" (výchozí) nebo source-server="<source-server-unique-name>"
    • target-use-last-used="true" (výchozí) nebo target-server="<target-server-unique-name>"

    Příklad :

    <output-providers>
      <data-migration-connection   source-use-last-used="true"
                                   target-server="<target-server-unique-name>"/>
    </output-providers>
    

    nebo

    <migrate-data>
      <data-migration-connection   source-server="<source-server-unique-name>"
                                   target-use-last-used="true"/>
    </migrate-data>
    
  3. Vyskakovací okno uživatelského vstupu: Umožňuje řešení chyb při načítání objektů z databáze. Zadáte režimy vstupu a pokud dojde k chybě, konzola pokračuje podle zadaného nastavení.

    Režim Popis
    ask-user Zobrazí výzvu k pokračování (yes) nebo k chybě (no).
    error (výchozí) Konzola zobrazí chybu a zastaví provádění.
    continue Konzole pokračuje ve vykonávání.

    Příklad :

    <output-providers>
      <user-input-popup mode="<ask-user/continue/error>"/>
    </output-providers>
    

    nebo

    <!-- Connect to target database -->
    <connect-target-database server="<target-server-unique-name>">
      <user-input-popup mode="<ask-user/continue/error>"/>
    </connect-target-database>
    
  4. Znovu Připojit Poskytovatele: Umožňuje nastavit nastavení opětovného připojení, pokud dojde k selhání připojení. To je možné nastavit pro zdrojové i cílové servery.

    Režim opětovného připojení Popis
    reconnect-to-last-used-server Pokud připojení není aktivní, pokusí se znovu připojit k poslednímu serveru, který se používá maximálně pětkrát.
    generate-an-error (výchozí) Pokud připojení není aktivní, vygeneruje se chyba.

    Příklad :

    <output-providers>
      <reconnect-manager  on-source-reconnect="<reconnect-to-last-used-server/generate-an-error>"
                          on-target-reconnect="<reconnect-to-last-used-server/generate-an-error>"/>
    </output-providers>
    

    nebo

    <!--synchronization-->
    <synchronize-target>
      <reconnect-manager on-target-reconnect="reconnect-to-last-used-server"/>
    </synchronize-target>
    

    nebo

    <!--data migration-->
    <migrate-data server="<target-server-unique-name>">
      <reconnect-manager
        on-source-reconnect="reconnect-to-last-used-server"
        on-target-reconnect="generate-an-error"/>
    </migrate-data>
    
  5. Poskytovatel přepisu převodníku: Umožňuje zpracovávat objekty, které již existují v cílové metabázi.

    Akce Popis
    error Konzola zobrazí chybu a zastaví provádění.
    overwrite (výchozí) Přepíše existující hodnoty objektů.
    skip Konzola přeskočí objekty, které už v databázi existují.
    ask-user Vyzve vás k zadání vstupu (yes / no).

    Příklad :

    <output-providers>
      <object-overwrite action="<error/skip/overwrite/ask-user>"/>
    </output-providers>
    

    nebo

    <convert-schema object-name="<object-name>">
      <object-overwrite action="<error/skip/overwrite/ask-user>"/>
    </convert-schema>
    
  6. Poskytovatel neúspěšných předpokladů: Můžete zpracovat všechny předpoklady, které jsou nutné pro zpracování příkazu. Ve výchozím nastavení je strict-modefalse. Pokud true, vygeneruje se výjimka kvůli selhání splnění požadavků.

    Příklad :

    <output-providers>
      <prerequisites strict-mode="<true/false>"/>
    </output-providers>
    
  7. Zastavit operaci: Pokud chcete operaci zastavit, můžete použít klávesovou zkratku Ctrl+C. SSMA pro konzolovou aplikaci čeká na dokončení operace a ukončí běh konzoly.

    Pokud chcete spuštění okamžitě zastavit, můžete znovu stisknout klávesu Ctrl+C klávesovou zkratku pro ukončení konzolové aplikace SSMA.

  8. zprostředkovatel průběhu: Informuje o průběhu každého příkazu konzoly. Ve výchozím nastavení zakázáno. Atributy hlášení o průběhu zahrnují:

    • off
    • every-1%
    • every-2%
    • every-5%
    • every-10%
    • every-20%

    Příklad :

    <output-providers>
      progress-reporting   enable="<true/false>"            (optional)
                           report-messages="<true/false>"   (optional)
                           report-progress="every-1%/every-2%/every-5%/every-10%/every-20%/off" (optional)/>
    </output-providers>
    

    nebo

    <...All commands...>
      <progress-reporting
        enable="<true/false>"              (optional)
        report-messages="<true/false>"     (optional)
        report-progress="every-1%/every-2%/every-5%/every-10%/every-20%/off"     (optional)/>
    </...All commands...>
    
  9. úroveň podrobností protokolovacího nástroje: Nastaví úroveň podrobností protokolu. To odpovídá možnosti Všechny kategorie v uživatelském rozhraní.

    Úroveň logování Popis
    fatal-error Protokolují se pouze závažné chybové zprávy.
    error (výchozí) Protokolují se pouze chybové a závažné chybové zprávy.
    warning Protokolují se všechny úrovně kromě ladění a informačních zpráv.
    info Kromě zpráv ladění se protokolují všechny úrovně.
    debug Jsou zaznamenány všechny úrovně zpráv.

    Povinné zprávy se protokolují na libovolné úrovni.

    Příklad :

    <output-providers>
      <log-verbosity level="fatal-error/error/warning/info/debug"/>
    </output-providers>
    

    nebo

    <...All commands...>
      <log-verbosity level="fatal-error/error/warning/info/debug"/>
    </...All commands...>
    
  10. Přepsat šifrované heslo: Pokud true, nešifrované heslo zadané v sekci definice serveru v souboru připojení k serveru nebo v souboru skriptu přepíše šifrované heslo uložené v chráněném úložišti, pokud existuje. Pokud není v nezaškrtaném textu zadané žádné heslo, zobrazí se výzva k zadání hesla.

    V této věci vznikají dva případy:

    1. Pokud je volba přepsání false, pořadí hledání je Chráněné úložiště > Skriptový soubor > Soubor připojení serveru > Výzva uživateli.

    2. Pokud je možnost přepsání true, pořadí hledání je Soubor skriptu > Server Connection File > Prompt User.

    Příklad :

    <output-providers>
      <encrypted-password override="<true/false>"/>
    </output-providers>
    

Nekonfigurovatelná možnost je:

  • Maximální počet pokusů o opětovné připojení: Pokud vyprší časový limit připojení nebo dojde k přerušení kvůli selhání sítě, je nutné server znovu připojit. Pokusy o opětovné připojení jsou povoleny maximálně 5 pokusům, po kterých konzola automaticky provede připojení. Zařízení automatického opětovného připojení snižuje úsilí při opětovném spuštění skriptu.

Parametry připojení k serveru

Parametry připojení k serveru lze definovat v souboru skriptu nebo v souboru připojení k serveru. Další informace najdete v tématu Vytvoření souborů připojení k serveru.

Příkazy skriptu

Soubor skriptu obsahuje posloupnost příkazů pracovního postupu migrace ve formátu XML. Konzolová aplikace SSMA zpracovává migraci v pořadí příkazů zobrazených v souboru skriptu.

Například typická migrace dat konkrétní tabulky v databázi Db2 se řídí hierarchií schématu >tabulek.

Po úspěšném spuštění všech příkazů v souboru skriptu se konzolová aplikace SSMA ukončí. Obsah skriptového souboru je většinou statický, přičemž informace o proměnných jsou obsaženy buď v souboru s hodnotami proměnných, nebo v samostatné části skriptového souboru určené pro tyto hodnoty.

Příklad :

Tady je ukázka příkazů souboru skriptu:

<ssma-script-file>
  <script-commands>
    <create-new-project project-folder="<project-folder>"
                        project-name="<project-name>"
                        overwrite-if-exists="<true/false>"/>
    <connect-source-database server="<source-server-unique-name>"/>
    <save-project/>
    <close-project/>
  </script-commands>
</ssma-script-file>

Šablony skládající se ze tří souborů skriptů (pro provádění různých scénářů), souboru hodnot proměnných a souboru připojení k serveru jsou k dispozici ve složce Ukázkové skripty konzoly v adresáři produktu:

  • AssessmentReportGenerationSample.xml
  • ConversionAndDataMigrationSample.xml
  • SqlStatementConversionSample.xml
  • VariableValueFileSample.xml
  • ServersConnectionFileSample.xml

Šablony (soubory) můžete spustit po změně parametrů zobrazených v nich podle relevantnosti.

Úplný seznam příkazů skriptu najdete v Spuštění konzoly SSMA

Ověření souboru skriptu

Soubor skriptu můžete ověřit v definičním souboru schématu O2SSConsoleScriptSchema.xsd, který je k dispozici ve složce Schemas.