Sdílet prostřednictvím


Vytvoření kroku úlohy skriptu PowerShellu

platí pro:SQL Serverazure SQL Managed Instance

Důležitý

Na Azure SQL Managed Instance, většina, ale ne všechny funkce agenta SQL Serveru jsou aktuálně podporované. Podrobnosti najdete v tématu rozdíly T-SQL služby Azure SQL Managed Instance oproti SQL Serveru nebo omezení úloh agenta SQL ve službě SQL Managed Instance.

Toto téma popisuje, jak vytvořit a definovat krok úlohy agenta SQL Serveru, který spouští skript PowerShellu na SQL Serveru pomocí aplikace SQL Server Management Studio nebo jazyka Transact-SQL.

Než začnete

Zabezpečení

Podrobné informace naleznete v části Implementace zabezpečení agenta SQL Serveru.

Použití aplikace SQL Server Management Studio

Vytvoření kroku úlohy skriptem PowerShell

  1. V průzkumníku objektů připojte se k instanci databázového stroje SQL Serveru a pak tuto instanci rozbalte.

  2. Rozbalte SQL Server Agent, vytvořte novou úlohu nebo klikněte pravým tlačítkem myši na existující úlohu a potom klikněte na Vlastnosti. Další informace o vytvoření úlohy naleznete v tématu Vytváření úloh.

  3. V dialogovém okně Vlastnosti úlohy klepněte na stránku Kroky a potom klepněte na tlačítko Nový.

  4. V dialogovém okně Nový krok úlohy zadejte Název kroku úlohy.

  5. V seznamu Typ klikněte na PowerShell.

  6. V seznamu Spustit jako vyberte účet proxy s přihlašovacími údaji, které bude úloha používat.

  7. Do pole Command zadejte syntaxi skriptu PowerShellu, která se spustí pro krok úlohy. Případně klikněte na Otevřít a vyberte soubor obsahující syntaxi skriptu. Příklad skriptu PowerShellu najdete v tématu Použití jazyka Transact-SQL níže.

  8. Klikněte na stránku Upřesnit a nastavte následující možnosti kroků úlohy: jakou akci provést, pokud krok úlohy proběhne úspěšně nebo selže, kolikrát se má agent SQL Serveru pokusit provést krok úlohy a jak často se mají opakovat pokusy.

Použití Transact-SQL

Vytvoření kroku úlohy skriptem PowerShell

  1. V Průzkumník objektůse připojte k instanci databázového stroje.

  2. Na panelu Standard klikněte na Nový dotaz.

  3. Zkopírujte a vložte následující příklad do okna dotazu a klikněte na Spustit.

    -- creates a PowerShell job step that finds the processes
    -- that use more than 1000 MB of memory and kills them  
    USE msdb;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Kills all processes that use more than 1000 MB of memory',  
        @subsystem = N'PowerShell',  
        @command = N'Get-Process | Where-Object { $_.WS -gt 1000MB } | Stop-Process',   
        @retry_attempts = 5,  
        @retry_interval = 5 ;  
    GO  
    

Další informace najdete v tématu sp_add_jobstep (Transact-SQL).

Použití objektů správy SQL Serveru

Vytvoření kroku úlohy skriptu PowerShellu

Pomocí třídy JobStep použijte programovací jazyk, který zvolíte, například Visual Basic, Visual C# nebo PowerShell.