Megosztás:


SQL Server Integration Services-csomagok végrehajtásának ütemezése Linuxon cron használatával

A következőkre vonatkozik:SQL Server Linux rendszeren

Az SQL Server Integration Services (SSIS) és az SQL Server Windows rendszeren történő futtatásakor az SSIS-csomagok végrehajtását az SQL Server Agent használatával automatizálhatja. Ha linuxos SQL Servert és SSIS-t futtat, az SQL Server Agent segédprogram azonban nem érhető el a feladatok Linuxon való ütemezéséhez. Ehelyett a cron szolgáltatást használja, amelyet linuxos platformokon széles körben használnak a csomagok végrehajtásának automatizálásához.

Ez a cikk példákat tartalmaz az SSIS-csomagok végrehajtásának automatizálására. A példák a Red Hat Enterprise-on való futtatásra vannak írva. A kód hasonló más Linux-disztribúciókhoz, például az Ubuntu-hoz.

Előfeltételek

Mielőtt a cron szolgáltatással futtatna feladatokat, ellenőrizze, hogy fut-e a számítógépen.

A cron szolgáltatás állapotának ellenőrzéséhez használja a következő parancsot:

systemctl status crond.service

Ha a szolgáltatás nem aktív (vagyis nem fut), forduljon a rendszergazdához a cron szolgáltatás megfelelő beállításához és konfigurálásához.

Feladatok létrehozása

A cron-feladat olyan feladat, amelyet konfigurálhat arra, hogy meghatározott időközönként rendszeresen fusson. A feladat lehet olyan egyszerű, mint egy parancs, amelyet általában közvetlenül a konzolba ír, vagy rendszerhéjszkriptként fut.

Az egyszerű kezelés és karbantartás érdekében javasoljuk, hogy a csomagvégrehajtási parancsokat egy leíró nevet tartalmazó szkriptbe helyezze.

Íme egy példa egy egyszerű shell-scriptre egy csomag futtatásához. Csak egyetlen parancsot tartalmaz, de szükség szerint további parancsokat is hozzáadhat.

# 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

Feladatok ütemezése a cron szolgáltatással

A feladatok definiálása után ütemezheti őket automatikus futtatásra a cron szolgáltatással.

Ha a cron futtatásához szeretné hozzáadni a feladatot, adja hozzá a feladatot a crontab fájlhoz. Ha meg szeretné nyitni a crontab fájlt egy szerkesztőben, ahol hozzáadhatja vagy frissítheti a feladatot, használja a következő parancsot:

crontab -e

Ha a korábban leírt feladatot napi 2:10-kor szeretné futtatni, adja hozzá a következő sort a crontab fájlhoz:

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

Mentse a crontab fájlt, majd lépjen ki a szerkesztőből.

A mintaparancs formátumának megismeréséhez tekintse át a következő szakaszban található információkat.

Crontab-fájl formátuma

Az alábbi képen a crontab fájlhoz hozzáadott feladatsor formátumleírása látható.

Képernyőkép a crontab-fájlbejegyzés formátumleírásáról.

A crontab fájlformátum részletesebb leírásához használja a következő parancsot:

man 5 crontab

Íme egy részleges példa a kimenetre, amely segít a jelen cikkben szereplő példa magyarázatában:

Képernyőkép a crontab formátum részletes részleges leírásáról.