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ří:
poskytovatele výstupního okna: Pokud je atribut
suppress-messages
nastavený natrue
, 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...>
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í) nebosource-server="<source-server-unique-name>"
-
target-use-last-used="true"
(výchozí) nebotarget-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>
-
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>
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>
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>
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-mode
false
. Pokudtrue
, vygeneruje se výjimka kvůli selhání splnění požadavků.Příklad :
<output-providers> <prerequisites strict-mode="<true/false>"/> </output-providers>
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.
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...>
ú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...>
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:
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.
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
.