Dela via


Schemalägga SQL Server Integration Services-paketkörning på Linux med cron

gäller för:SQL Server – Linux

När du kör SQL Server Integration Services (SSIS) och SQL Server i Windows kan du automatisera körningen av SSIS-paket med hjälp av SQL Server Agent. När du kör SQL Server och SSIS på Linux är dock SQL Server Agent-verktyget inte tillgängligt för att schemalägga jobb i Linux. I stället använder du cron-tjänsten, som används ofta på Linux-plattformar för att automatisera paketkörningen.

Den här artikeln innehåller exempel som visar hur du automatiserar körningen av SSIS-paket. Exemplen skrivs för att köras på Red Hat Enterprise. Koden liknar andra Linux-distributioner, till exempel Ubuntu.

Förutsättningar

Innan du använder cron-tjänsten för att köra jobb kontrollerar du om den körs på datorn.

Om du vill kontrollera status för cron-tjänsten använder du följande kommando:

systemctl status crond.service

Om tjänsten inte är aktiv (dvs. den inte körs) kontaktar du administratören för att konfigurera cron-tjänsten korrekt.

Skapa jobb

Ett cron-jobb är en uppgift som du kan konfigurera för att köras regelbundet med ett angivet intervall. Jobbet kan vara så enkelt som ett kommando som du normalt skulle skriva direkt i konsolen eller köra som ett gränssnittsskript.

För enkel hantering och underhåll rekommenderar vi att du placerar dina paketkörningskommandon i ett skript som innehåller ett beskrivande namn.

Här är ett exempel på ett enkelt gränssnittsskript för att köra ett paket. Den innehåller bara ett enda kommando, men du kan lägga till fler kommandon efter behov.

# A simple shell script that contains a simple package execution command
# Script name: SSISpackageName.daily

/opt/ssis/bin/dtexec /F yourSSISpackageName.dtsx >> $HOME/tmp/out 2>&1

Schemalägga jobb med cron-tjänsten

När du har definierat dina jobb kan du schemalägga att de ska köras automatiskt med hjälp av cron-tjänsten.

Lägg till ditt jobb så att cron kan köra det genom att lägga till jobbet i crontab-filen. Om du vill öppna crontab-filen i en redigerare där du kan lägga till eller uppdatera jobbet använder du följande kommando:

crontab -e

Om du vill schemalägga det tidigare beskrivna jobbet att köras dagligen kl. 02:10 lägger du till följande rad i crontab-filen:

# run <SSIS package name> at 2:10 AM every day
10 2 * * * $/HOME/SSIS/jobs/SSISpackageName.daily

Spara crontab-filen och avsluta sedan redigeraren.

Om du vill förstå formatet på exempelkommandot läser du informationen i följande avsnitt.

Format för en crontab-fil

Följande bild visar formatbeskrivningen för jobbraden som läggs till i crontab-filen.

Skärmbild av formatbeskrivningen för en crontab-filpost.

Om du vill få en mer detaljerad beskrivning av crontab-filformatet använder du följande kommando:

man 5 crontab

Här är ett delvis exempel på utdata som hjälper dig att förklara exemplet i den här artikeln:

Skärmbild av en detaljerad partiell beskrivning av crontab-format.