Megosztás a következőn keresztül:


CmdExec parancs-feladatlépés létrehozása

A következőkre vonatkozik:SQL ServerFelü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

  1. Az Object Explorerben csatlakozzon az SQL Server adatbázismotor egyik példányához, majd bontsa ki azt a példányt.

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

  3. A Feladat tulajdonságai párbeszédpanelen kattintson a Lépések lapra, majd kattintson Újelemre.

  4. Az Új feladat lépés párbeszédpanelen írjon be egy feladatot Lépésnév.

  5. A Típus listában válassza az Operációs rendszer (CmdExec)elemet.

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

  7. A sikeres parancs Folyamat kilépési kódja mezőbe () írjon be egy 0 és 999999 közötti értéket.

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

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

  1. Az Object Explorer-ben csatlakozzon az adatbázismotor egy példányához.

  2. A Standard sávon kattintson Új lekérdezéselemre.

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