Creare un processo

Si applica a:SQL ServerIstanza gestita di SQL di Azure

Importante

In Istanza gestita di SQL di Azure sono attualmente supportate la maggior parte delle funzionalità di SQL Server Agent, ma non tutte. Per informazioni dettagliate, vedere Differenze T-SQL tra Istanza gestita di SQL di Azure e SQL Server.

Questo argomento descrive come creare un processo di Microsoft SQL Server Agent in SQL Server usando SQL Server Management Studio, Transact-SQL o SQL Server Management Objects (SMO).

Per aggiungere al processo passaggi, pianificazioni, avvisi e notifiche da inviare agli operatori, vedere i collegamenti agli argomenti nella sezione Vedere anche.

Prima di iniziare

Limitazioni e restrizioni

  • Per creare un processo, è necessario che l'utente sia membro di uno dei ruoli predefiniti del database di SQL Server Agent o del ruolo predefinito del server sysadmin. Un processo può essere modificato solo dal proprietario o dai membri del ruolo sysadmin . Per altre informazioni sui ruoli predefiniti del database di SQL Server Agent, vedere Ruoli di database predefiniti di SQL Server Agent.

  • L'assegnazione di un processo a un altro account di accesso non garantisce che il nuovo proprietario disponga di autorizzazioni sufficienti per eseguire correttamente il processo.

  • I processi locali vengono memorizzati nella cache dall'istanza locale di SQL Server Agent. Eventuali modifiche, pertanto, forzano in modo implicito una nuova memorizzazione nella cache da parte di SQL Server Agent. Poiché SQL Server Agent non memorizza nella cache il processo fino alla chiamata di sp_add_jobserver, è consigliabile chiamare la stored procedure sp_add_jobserver per ultima.

Sicurezza

  • Solo un amministratore di sistema può cambiare il proprietario di un processo.

  • Per motivi di sicurezza, solo il proprietario del processo o un membro del ruolo sysadmin può modificare la definizione del processo. Solo i membri del ruolo predefinito del server sysadmin possono assegnare la proprietà di un processo ad altri utenti ed eseguire qualsiasi processo, indipendentemente dal proprietario.

    Nota

    Se si assegna la proprietà di un processo a un utente che non è membro del ruolo predefinito del server sysadmin e il processo sta eseguendo operazioni per le quali sono necessari account proxy, ad esempio l'esecuzione del pacchetto SSIS, verificare che l'utente possa accedere all'account proxy. In caso contrario, verrà generato un errore.

Autorizzazioni

Per informazioni dettagliate, vedere Implementazione della sicurezza di SQL Server Agent.

Utilizzo di SQL Server Management Studio

Per creare un processo di SQL Server Agent

  1. In Esplora oggettifare clic sul segno più per espandere il server in cui si desidera creare un processo di SQL Server Agent.

  2. Fare clic sul segno più per espandere SQL Server Agent.

  3. Fare clic con il pulsante destro del mouse sulla cartella Processi e quindi selezionare Nuovo processo.

  4. Nella pagina Generale della finestra di dialogo Nuove processo modificare le proprietà generali del processo. Per altre informazioni sulle opzioni disponibili in questa pagina, vedere Proprietà processo - Nuovo processo (pagina Generale)

  5. Nella pagina Passaggi , organizzare i passaggi del processo. Per altre informazioni sulle opzioni disponibili in questa pagina, vedere Proprietà processo - Nuovo processo (pagina Passaggi)

  6. Nella pagina Pianificazioni , organizzare le pianificazioni per il processo. Per altre informazioni sulle opzioni disponibili in questa pagina, vedere Proprietà processo - Nuovo processo (pagina Pianificazioni)

  7. Nella pagina Avvisi , organizzare gli avvisi per il processo. Per altre informazioni sulle opzioni disponibili in questa pagina, vedere Proprietà processo - Nuovo processo (pagina Avvisi)

  8. Nella pagina Notifiche impostare le azioni che SQL Server Agent deve eseguire al completamento del processo. Per altre informazioni sulle opzioni disponibili in questa pagina, vedere Proprietà processo - Nuovo processo (pagina Notifiche).

  9. Nella pagina Destinazioni , gestire i server di destinazione per il processo. Per altre informazioni sulle opzioni disponibili in questa pagina, vedere Proprietà processo - Nuovo processo (pagina Destinazioni).

  10. Al termine, fai clic su OK.

Utilizzo di Transact-SQL

Per creare un processo di SQL Server Agent

  1. In Esplora oggetti connettersi a un'istanza del motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.

    USE msdb ;  
    GO  
    EXEC dbo.sp_add_job  
        @job_name = N'Weekly Sales Data Backup' ;  
    GO  
    EXEC sp_add_jobstep  
        @job_name = N'Weekly Sales Data Backup',  
        @step_name = N'Set database to read only',  
        @subsystem = N'TSQL',  
        @command = N'ALTER DATABASE SALES SET READ_ONLY',   
        @retry_attempts = 5,  
        @retry_interval = 5 ;  
    GO  
    EXEC dbo.sp_add_schedule  
        @schedule_name = N'RunOnce',  
        @freq_type = 1,  
        @active_start_time = 233000 ;  
    USE msdb ;  
    GO  
    EXEC sp_attach_schedule  
       @job_name = N'Weekly Sales Data Backup',  
       @schedule_name = N'RunOnce';  
    GO  
    EXEC dbo.sp_add_jobserver  
        @job_name = N'Weekly Sales Data Backup';  
    GO  
    

Per altre informazioni, vedi:

Utilizzo di SQL Server Management Objects

Per creare un processo di SQL Server Agent

Chiamare il metodo Create della classe Job usando un linguaggio di programmazione come Visual Basic, Visual C# o PowerShell. Per un codice di esempio, vedere Pianificazione delle attività amministrative automatiche in SQL Server Agent.