CmdExec parancs-feladatlépés létrehozása
A következőkre vonatkozik:SQL Server
Felügyelt Azure SQL-példány
Fontos
Felügyelt Azure SQL-példányesetében a legtöbb, de jelenleg nem minden SQL Server Agent-funkció támogatott. Részletekért tekintse meg az Azure SQL Managed Instance T-SQL eltéréseit az SQL Server -hez képest.
Ez a témakör azt ismerteti, hogyan hozhat létre és definiálhat egy Microsoft SQL Server Agent feladatlépést az SQL Serverben, amely végrehajtható programot vagy operációsrendszer-parancsot használ az SQL Server Management Studio, Transact-SQL vagy SQL Server Management Objects használatával.
Mielőtt hozzákezdene
Biztonság
Alapértelmezés szerint csak a sysadmin rögzített kiszolgálói szerepkör tagjai hozhatnak létre CmdExec feladatlépéseket. Ezek a feladatlépések az SQL Server Agent szolgáltatásfiókjának kontextusában futnak, kivéve, ha a sysadmin felhasználó proxyfiókot hoz létre. Azok a felhasználók, akik nem tagjai a sysadmin szerepkörnek, cmdExec feladatlépéseket hozhatnak létre, ha hozzáféréssel rendelkeznek egy CmdExec proxyfiókhoz.
Engedélyek
További információ: Sql Server Agent Securityimplementálása.
Az SQL Server Management Studio használata
CmdExec-feladatlépés létrehozása
Az Object Explorerben csatlakozzon az SQL Server adatbázismotor egyik példányához, majd bontsa ki azt a példányt.
Bontsa ki SQL Server-ügynök, hozzon létre egy új feladatot, vagy kattintson a jobb gombbal egy meglévő feladatra, majd kattintson a Tulajdonságokparancsra.
A Feladat tulajdonságai párbeszédpanelen kattintson a Lépések lapra, majd kattintson Újelemre.
Az Új feladat lépés párbeszédpanelen írjon be egy feladatot Lépésnév.
A Típus listában válassza az Operációs rendszer (CmdExec)elemet.
A Futtatás listában válassza ki a proxyfiókot a feladat által használt hitelesítő adatokkal. Alapértelmezés szerint a CmdExec feladat lépései az SQL Server Agent szolgáltatásfiókjának kontextusában futnak.
A sikeres parancs Folyamat kilépési kódja mezőbe () írjon be egy 0 és 999999 közötti értéket.
A Parancs mezőbe írja be az operációs rendszer parancsát vagy a végrehajtható programot. Lásd: "A Transact T-SQL használata egy példához.
Kattintson a Speciális lapra a feladatlépési beállítások beállításához, például: milyen műveletet kell végrehajtania, ha a feladatlépés sikeres vagy sikertelen, az SQL Server-ügynöknek hányszor kell végrehajtania a feladatlépést, és azt a fájlt, amelyben az SQL Server-ügynök meg tudja írni a feladatlépés kimenetét. Csak a sysadmin rögzített kiszolgálói szerepkör tagjai írhatnak feladatlépés-kimenetet egy operációsrendszer-fájlba.
A Transact-SQL használata
CmdExec-feladatlépés létrehozása
Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.
A Standard sávon kattintson Új lekérdezéselemre.
Másolja és illessze be a következő példát a lekérdezési ablakba, és kattintson a Végrehajtásgombra.
-- creates a job step that uses CmdExec USE msdb; GO EXEC sp_add_jobstep @job_name = N'Weekly Sales Data Backup', @step_name = N'Set database to read only', @subsystem = N'CMDEXEC', @command = 'C:\clickme_scripts\SQL11\PostBOLReorg GetHsX.exe', @retry_attempts = 5, @retry_interval = 5 ; GO
További információ: sp_add_jobstep (Transact-SQL)
SQL Server Felügyeleti objektumok használata
CmdExec-feladatlépés létrehozása
Használja a JobStep osztályt egy ön által választott programozási nyelv használatával, például Visual Basic, Visual C# vagy PowerShell használatával.