Delen via


Scriptbestanden maken (AccessToSQL)

Voordat u de SSMA-consoletoepassing (SQL Server Migration Assistant) start, maakt u het scriptbestand. Maak indien nodig het waardebestand voor de variabele en het serververbindingsbestand.

Het scriptbestand heeft drie secties:

  1. config: Stel de configuratieparameters voor de consoletoepassing in.

  2. servers: Stel de bron- en doelserverdefinities in. U kunt deze definities ook in een afzonderlijk serververbindingsbestand plaatsen.

  3. script-commands: Voer SSMA-werkstroomopdrachten uit.

Elke sectie wordt gedetailleerd beschreven in de volgende secties:

Instellingen voor toegangsconsole configureren

In het consolescriptbestand worden de configuraties van een script weergegeven.

Als u een van de elementen in het configuratieknooppunt opgeeft, stelt u de globale instelling in voor alle scriptopdrachten. Als u de algemene instelling wilt overschrijven, stelt u deze configuratie-elementen in elke opdracht in de script-command sectie in.

U kunt de volgende opties configureren:

  1. Uitvoervensterprovider: Als u het suppress-messages kenmerk trueinstelt, worden de opdrachtspecifieke berichten niet weergegeven in de console. De kenmerken zijn:

    • destination: Hiermee geeft u op of de uitvoer wordt afgedrukt naar een bestand of stdout. Dit kenmerk is false standaard.

    • file-name: het pad van het bestand (optioneel).

    • suppress-messages: Onderdrukt berichten op de console. Dit kenmerk is false standaard.

    Voorbeeld:

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

    of

    <...All commands...>
      <output-window
         suppress-messages="<true/false>"   (optional)
         destination="<file/stdout>"        (optional)
         file-name="<file-name>"            (optional)
       />
    </...All commands...>
    
  2. Gegevensmigratieverbindingsprovider: hiermee geeft u op welke bron- of doelserver moet worden gebruikt voor gegevensmigratie. source-use-last-used geeft aan dat de laatst gebruikte bronserver wordt gebruikt voor gegevensmigratie. Eveneens geeft target-use-last-used aan dat de laatst gebruikte doelserver ten behoeve van gegevensmigratie wordt ingezet. Gebruik de source-server of target-server kenmerken om de server op te geven.

    U kunt slechts een van de volgende kenmerken gebruiken:

    • source-use-last-used="true" (standaard) of source-server="source_servername"
    • target-use-last-used="true" (standaard) of target-server="target_servername"

    Voorbeeld:

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

    of

    <migrate-data>
      <data-migration-connection   source-server="source_1"
                                   target-use-last-used="true"/>
    </migrate-data>
    
  3. Pop-up voor gebruikersinvoer: verwerkt fouten wanneer de console objecten uit de database laadt. De gebruiker selecteert de invoermodi en als er een fout optreedt, gaat de console verder zoals door de gebruiker gespecificeerd.

    De modi omvatten onder andere:

    • ask-user: vraagt de gebruiker om door te gaan (yes) of te stoppen door een fout (no).
    • error: De console geeft een fout weer en stopt de uitvoering.
    • continue: De console gaat verder met de uitvoering.

    De standaardmodus is error.

    Voorbeeld:

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

    of

    <!-- Connect to target database -->
    <connect-target-database server="target_0">
      <user-input-popup mode="<ask-user/continue/error>"/>
    </connect-target-database>
    
  4. Provider opnieuw verbinden: Hiermee configureert u de instellingen voor het herstellen van de verbinding bij verbindingsfouten. Stel deze optie in voor zowel bron- als doelservers.

    De modi voor opnieuw verbinden zijn:

    • reconnect-to-last-used-server: Als de verbinding niet actief is, wordt geprobeerd opnieuw verbinding te maken met de laatste server die maximaal vijf keer is gebruikt.
    • generate-an-error: Als de verbinding niet actief is, genereert het systeem een fout.

    De standaardmodus is generate-an-error.

    Voorbeeld:

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

    of

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

    of

    <!--data migration-->
    <migrate-data server="target_0">
      <reconnect-manager
        on-source-reconnect="reconnect-to-last-used-server"
        on-target-reconnect="generate-an-error"/>
    </migrate-data>
    
  5. Instelling overschrijving provider: gebruik deze instelling om objecten die al aanwezig zijn in de doelmetabase te beheren. De mogelijke acties zijn:

    • error: De console geeft een fout weer en stopt de uitvoering.
    • overwrite: hiermee worden bestaande objectwaarden overschreven. Deze actie is de standaardinstelling.
    • skip: De console slaat de objecten over die al in de database aanwezig zijn.
    • ask-user: vraagt de gebruiker om invoer (yes of no).

    Voorbeeld:

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

    of

    <convert-schema object-name="ssma.TT1">
      <object-overwrite action="<error|skip|overwrite|ask-user>"/>
    </convert-schema>
    
  6. Provider voor niet-vervulde vereisten: gebruik deze instelling om aan vereisten te voldoen die nodig zijn voor het verwerken van een opdracht. Standaard is strict-modefalse. Als u dit trueinstelt op, genereert het systeem een uitzondering voor het niet voldoen aan de vereisten.

    Voorbeeld:

    <output-providers>
      <prerequisites strict-mode="<true|false>"/>
    </output-providers>
    
  7. Stopbewerking: Als u de bewerking tijdens de mid-bewerking wilt stoppen, gebruikt u de sneltoets Ctrl+C . SSMA Console wacht tot de bewerking is voltooid en beëindigt de uitvoering van de console.

    Als u de uitvoering onmiddellijk wilt stoppen, drukt u nogmaals op de sneltoets Ctrl+C voor plotselinge beëindiging van de SSMA-consoletoepassing.

  8. Voortgangsprovider: informeert de voortgang van elke consoleopdracht. Deze instelling is standaard uitgeschakeld. De kenmerken voor voortgangsrapportage bestaan uit:

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

    Voorbeeld:

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

    of

    <...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. Logger Verbosity: stelt het niveau van de uitgebreidheid van logboeken in. Deze instelling komt overeen met de optie Alle categorieën in de gebruikersinterface. Standaard is error het verbositeitsniveau van het logboek.

    De opties op logniveau zijn:

    • fatal-error: registreert alleen onherstelbare foutberichten.
    • error: registreert alleen fout- en fatale foutberichten.
    • warning: registreert alle niveaus behalve foutopsporings- en informatieberichten.
    • info: registreert alle niveaus behalve foutopsporingsberichten.
    • debug: registreert alle niveaus van berichten.

    Opmerking

    SSMA registreert verplichte berichten op elk niveau.

    Voorbeeld:

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

    of

    <...All commands...>
      <log-verbosity level="fatal-error/error/warning/info/debug"/>
    </...All commands...>
    
  10. Versleuteld wachtwoord overschrijven: Als true, de serverdefinitiesectie van het serververbindingsbestand of het scriptbestand het wachtwoord zonder tekst gebruikt om het versleutelde wachtwoord te overschrijven dat is opgeslagen in beveiligde opslag, als deze bestaat. Als het wachtwoord voor duidelijke tekst niet is opgegeven, wordt de gebruiker gevraagd het wachtwoord in te voeren.

    Er treden twee gevallen op:

    1. Als de override-optie false is, is de volgorde van zoeken: Beveiligde opslag >, Scriptbestand >, Serververbinding bestand >, Gebruiker vragen.

    2. Als de overschrijfoptie true is, is de volgorde van zoeken: scriptbestand > serververbindingsbestand > gebruiker vragen.

    Voorbeeld:

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

De niet-configureerbare optie is:

  • Maximum aantal nieuwe verbindingspogingen: wanneer er een time-out optreedt voor een tot stand gebrachte verbinding of onderbrekingen als gevolg van een netwerkfout, moet de server opnieuw verbinding maken. Met de console kunnen maximaal vijf (5) nieuwe pogingen worden gedaan om opnieuw verbinding te maken. Na deze nieuwe pogingen wordt de verbinding automatisch uitgevoerd door de console. De functie voor automatisch opnieuw verbinden vermindert uw inspanning bij het opnieuw uitvoeren van het script.

Serververbindingsparameters

U kunt serververbindingsparameters definiëren in het scriptbestand of in het serververbindingsbestand. Zie De serververbindingsbestanden maken voor meer informatie.

Scriptopdrachten

Het scriptbestand bevat een reeks migratiewerkstroomopdrachten in de XML-indeling. De SSMA Console-toepassing verwerkt de migratie in de volgorde van de opdrachten die worden weergegeven in het scriptbestand.

Een typische gegevensmigratie van een specifieke tabel in een Access-database volgt bijvoorbeeld de hiërarchie van: Databasetabel > .

Wanneer alle opdrachten in het scriptbestand zijn uitgevoerd, wordt de SSMA-consoletoepassing afgesloten en wordt het besturingselement naar de gebruiker geretourneerd. De inhoud van een scriptbestand is meer of minder statisch, met variabele informatie in een bestand met variabele waarden maken of in een afzonderlijke sectie in het scriptbestand voor variabele waarden.

Voorbeeld:

<!--Sample of script file commands -->
<ssma-script-file>
  <script-commands>
    <create-new-project project-folder="$project_folder$"
                        project-name="$project_name$"
                        overwrite-if-exists="true"/>
    <connect-source-database server="source_2"/>
    <save-project/>
    <close-project/>
  </script-commands>
</ssma-script-file>

De map Voorbeeldconsolescripts van de productmap bevat sjablonen die bestaan uit drie scriptbestanden (voor het uitvoeren van verschillende scenario's), een bestand met variabele waarden en een serververbindingsbestand:

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

U kunt de sjablonen uitvoeren nadat u de parameters voor relevantie hebt gewijzigd.

Zie De SSMA-console uitvoeren voor een volledige lijst met scriptopdrachten.

Validatie van scriptbestand

U kunt uw scriptbestand valideren op basis van het schemadefinitiebestand A2SSConsoleScriptSchema.xsd in de Schemas map.