Creare pianificazioni e collegarle ai processi

Si applica a: SQL Server e Istanza 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.

La pianificazione dei processi di SQL Server Agent comporta la definizione della condizione o delle condizioni che provocano l'inizio dell'esecuzione del processo senza interazione dell'utente. È possibile pianificare l'esecuzione automatica di un processo creando una nuova pianificazione per il processo o collegando una pianificazione esistente al processo.

È possibile creare una pianificazione in due modi:

  • Creare la pianificazione durante la creazione di un processo.

  • Creare la pianificazione in Esplora oggetti.

Dopo la creazione, la pianificazione può essere collegata a più processi anche se è stata creata per un processo specifico. È anche possibile scollegare le pianificazioni dai processi.

Avviso

L'aggiornamento di una pianificazione avrà effetto su tutti i processi collegati ad essa. Per controllare la pianificazione di singoli processi, assicurarsi di creare un oggetto pianificazione separato per ogni processo.

Una pianificazione può essere basata sul tempo o su un evento. Ad esempio, è possibile pianificare l'esecuzione di un processo nei momenti seguenti:

  • A ogni avvio di SQL Server Agent.

  • Quando l'utilizzo della CPU del computer corrisponde al livello di inattività.

  • Una sola volta in corrispondenza di una data e un'ora specifiche.

  • In base a una pianificazione ricorrente.

In alternativa alle pianificazioni di processi, è possibile creare un avviso che risponda a un evento tramite l'esecuzione di un processo.

Nota

È possibile eseguire una sola istanza del processo alla volta. Se si tenta di eseguire manualmente un processo mentre questo viene eseguito in base alla pianificazione, la richiesta di esecuzione verrà rifiutata da SQL Server Agent.

Per impedire l'esecuzione di un processo pianificato, è necessario eseguire una delle operazioni seguenti:

  • Disabilitare la pianificazione.

  • Disabilitare il processo.

  • Scollegare la pianificazione dal processo.

  • Arrestare il servizio SQL Server Agent.

  • Eliminare la pianificazione.

Se la pianificazione non è attivata, il processo potrà essere eseguito comunque in risposta a un avviso o quando viene eseguito manualmente da un utente. Se una pianificazione di processo non è attivata, sarà disattivata per tutti i processi che la utilizzano.

È necessario riattivare esplicitamente una pianificazione disabilitata. La modifica della pianificazione non consente di riabilitarla automaticamente.

Date di inizio della pianificazione

La data di inizio di una pianificazione deve essere maggiore o uguale a 19900101.

Quando si collega una pianificazione a un processo, è necessario controllare la data di inizio utilizzata dalla pianificazione per eseguire il processo la prima volta. La data di inizio dipende dal giorno e dall'ora in cui la pianificazione viene collegata al processo. Ad esempio, si crea una pianificazione che viene eseguita ogni due lunedì alle 8:00. Se si crea un processo alle 10:00 di lunedì 3 marzo 2008, la data di inizio della pianificazione sarà lunedì 17 marzo 2008. Se si crea un altro processo martedì 4 marzo 2008, la data di inizio della pianificazione è lunedì 10 marzo 2008.

È possibile modificare la data di inizio della pianificazione dopo avere collegato la pianificazione a un processo.

Pianificazioni con CPU inattiva

Per ottimizzare l'utilizzo della CPU, è possibile definire una condizione di inattività della CPU per SQL Server Agent. Tale impostazione consente ad SQL Server Agent di eseguire i processi nei momenti di minor carico di lavoro della CPU. Ad esempio è possibile pianificare un processo di ricompilazione degli indici quando la CPU è in stato inattivo o durante i periodi di produzione ridotta.

Prima di definire i processi da eseguire durante l'inattività della CPU, è necessario determinare il carico di lavoro della CPU durante l'elaborazione normale. A tale scopo, utilizzare SQL Server Profiler o Monitor prestazioni per monitorare il traffico nel server e raccogliere statistiche. Le informazioni raccolte saranno utili per la definizione di una percentuale di utilizzo corrispondente allo stato di inattività della CPU e della durata di tale stato.

Definire la condizione di inattività come valore percentuale. L'utilizzo della CPU dovrà rimanere inferiore a tale valore per un periodo di tempo specificato. Definire quindi il periodo di tempo. Quando l'utilizzo della CPU è inferiore alla percentuale specificata per il periodo di tempo specificato, SQL Server Agent avvia tutti i processi pianificati per l'esecuzione con CPU inattiva. Per ulteriori informazioni sull'uso di SQL Server Profiler o di Monitor prestazioni per monitorare l'utilizzo della CPU, vedere Monitoraggio dell'utilizzo della CPU.

Descrizione Argomento
Viene descritto come creare una pianificazione per un processo di SQL Server Agent. Create a Schedule
Descrive come pianificare un processo di SQL Server Agent. Pianificare un processo
Viene illustrato come definire la condizione di inattività della CPU per il server. Impostazione del tempo e della durata di inattività della CPU (SQL Server Management Studio)

Vedi anche

sp_help_jobschedule
sysjobschedules