Delen via


Een PowerShell-scripttaakstap maken

van toepassing op:SQL ServerAzure SQL Managed Instance

Belangrijk

Op Azure SQL Managed Instanceworden de meeste, maar niet alle FUNCTIES van SQL Server Agent momenteel ondersteund. Zie T-SQL-verschillen tussen Azure SQL Managed Instance en SQL Server voor meer informatie.

In dit onderwerp wordt beschreven hoe u een SQL Server Agent-taakstap maakt en definieert waarmee een PowerShell-script in SQL Server wordt uitgevoerd met behulp van SQL Server Management Studio of Transact-SQL.

Voordat u begint

Veiligheid

Zie SQL Server Agent Securityimplementeren voor gedetailleerde informatie.

We luisteren: Als u iets verouderd of onjuist vindt in dit artikel, zoals een stap of een codevoorbeeld, laat het ons dan weten. Klik op de knop Deze pagina in de sectie Feedback onderaan deze pagina. We lezen elk feedback-item over SQL, meestal de volgende dag. Bedankt.

SQL Server Management Studio gebruiken

Een PowerShell-scripttaakstap maken

  1. Maak in Objectverkenner verbinding met een exemplaar van de SQL Server Database Engine en vouw dat exemplaar vervolgens uit.

  2. Vouw SQL Server Agent-uit, maak een nieuwe taak of klik met de rechtermuisknop op een bestaande taak en klik vervolgens op Eigenschappen. Zie Taken makenvoor meer informatie over het maken van een taak.

  3. Klik in het dialoogvenster Taakeigenschappen op de pagina Stappen en klik vervolgens op Nieuw.

  4. Typ in het dialoogvenster Nieuwe taakstap een taak stapnaam.

  5. Klik in de lijst Type op PowerShell-.

  6. Selecteer in de Uitvoeren als lijst het proxyaccount met de inloggegevens die de taak zal gebruiken.

  7. Voer in het vak Opdracht de syntaxis van het PowerShell-script in die voor de taakstap wordt uitgevoerd. U kunt ook op openen klikken en een bestand met de scriptsyntaxis selecteren. Zie Transact-SQL- hieronder gebruiken voor een voorbeeld van een PowerShell-script.

  8. Klik op de pagina Geavanceerd om de volgende opties voor de taakstap in te stellen: welke actie u moet ondernemen als de taakstap slaagt of mislukt, hoe vaak SQL Server Agent de taakstap moet uitvoeren en hoe vaak nieuwe pogingen moeten worden uitgevoerd.

Transact-SQL gebruiken

Een PowerShell-scripttaakstap maken

  1. Maak in Objectverkennerverbinding met een exemplaar van Database Engine.

  2. Klik in de standaardbalk op Nieuwe query.

  3. Kopieer en plak het volgende voorbeeld in het queryvenster en klik op uitvoeren.

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

Zie sp_add_jobstep (Transact-SQL)voor meer informatie.

SQL Server-beheerobjecten gebruiken

Voor het maken van een PowerShell-scripttaakstap

Gebruik de JobStep-klasse met behulp van een programmeertaal die u kiest, zoals Visual Basic, Visual C# of PowerShell.