Datalog Documentazione KING Applicazione JobScheduler su DB SQL Milano, lì 14/09/2009 Microsoft SQL Server dispone del servizio di Job Scheduler, o Schedulatore di attività: si tratta di un applicativo che consente di pianificare (in alcuni casi monitorare) diverse attività quali , ad esempio, l’esecuzione di un query o di una routine di controllo. Lo schedulatore è così in grado di iniziare e gestire diverse operazioni in maniera automatica, processando una serie di istruzioni predefinite tramite il linguaggio Transact SQL. Gli obiettivi che si possono raggiungere tramite il suo utilizzo possono essere: Ì Ì Ì Ì La tempestività nell’individuazione di potenziali problematiche al fine di intraprendere eventuali azioni correttive. La programmazione e l’avvio attività di manutenzione sui database (backup, reindicizzazione, etc.) L’aggiornamento programmato di tabelle e al fine di ottimizzare l’uso di determinate funzioni. La programmazione e l’invio di report dettagliati riportanti l’esito delle attività svolte. Queste funzionalità possono essere utilizzate dal concessionario Datalog per monitorare automaticamente e a distanza il sistema KING installato presso il cliente: tramite Job Scheduler è infatti possibile impostare – ad esempio – delle query di controllo ed ottenere l’invio automatico di una mail con il resoconto della situazione. Nel presente documento, descriviamo (con un esempio pratico applicato al database di KING) come creare e pianificare un Job nel quale eseguiremo delle query di controlli sulle anagrafiche clienti al fine di evidenziare eventuali incongruenze o errori al loro interno. Resta inteso che il servizio di Assistenza tecnica Datalog è a Vostra disposizione per fornire ulteriori informazioni ed un adeguato supporto in merito. Pagina 1 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 1) Per prima cosa apriamo Microsoft SQL Server Management Studio, quindi espandiamo il menu SQL Server Agent cliccando successivamente con il tasto destro del mouse sulla voce Processi e selezionando quindi la funzione Nuovo Processo dal corrispondente menu contestuale: Pagina 2 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 2) A questo punto ci troveremo automaticamente posizionati nel capitolo Generale all’interno del quale andremo ad indicare le caratteristiche principali dell’attività in questione. Pagina 3 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 3) Lo step successivo consiste nella scheda Passaggi la quale consente di indicare uno più passaggi necessari allo svolgimento dell’attività Pagina 4 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 4) Tramite il pulsante Nuovo andremo a creare il nostro passaggio nel quale indicheremo innanzitutto un nome identificativo, il campo Tipo consente di impostare il sottosistema utilizzato dal processo (nel nostro breve esempio trattandosi di una query SQL imposteremo Script Transact SQL), infine selezioneremo i database interessati al controllo All’interno del campo Comando scriveremo le istruzioni relative alla query in questione, in alternativa tramite l’utilizzo del pulsante Apri è possibile selezionare un file .sql inerente ad un progetto già impostato con una o più istruzioni da eseguire. Sempre sulla parte sinistra della maschera il pulsante Analizza consentirà di effettuare una verifica sintattica circa quanto riportato all’interno del campo Comando Pagina 5 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 5) Tramite la scheda Avanzate è possibile impostare le azioni che vorremo eseguire in caso di esito positivo e negativo del processo appena indicato, inoltre sarà possibile indicare un file di output riportante l’esito di tale attività. In generale sarà possibile creare altri processi, eventualmente concatenandoli tra loro ed impostando un ordine di esecuzione personalizzato (ad esempio eseguendo per prima l’istruzione tramite QUERY e successivamente l’istruzione SP_SEND_DBMAIL al fine di inviare il risultato della stessa all’operatore) Pagina 6 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] Pagina 7 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 6) Tramite la scheda Pianificazioni sarà possibile impostare i criteri e la periodicità di esecuzione. Pagina 8 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 7) La scheda Avvisi consente di specificare la generazione di un avviso in risposta automatica ad uno o più eventi relativi al processo in questione. Oltre al controllo degli eventi di MSSQL Server, SQL Server Agent può inoltre controllare le condizioni delle prestazioni e gli eventi WMI (Windows Management Instrumentation). Per definire un avviso, è necessario specificare gli elementi seguenti: Ì Ì Ì Nome dell'avviso. Evento o condizione delle prestazioni che attiva l'avviso. Azione eseguita da SQL Server Agent in risposta all'evento o alla condizione delle prestazioni. Gli avvisi rispondono ai tipi di evento seguenti: Ì Ì Ì Eventi di SQL Server Condizioni delle prestazioni di SQL Server Eventi WMI Il tipo di evento determina i parametri utilizzati per specificare l'evento esatto. A tal proposito, per ulteriori dettagli tecnici, si rimanda il lettore alla consultazione della documentazione specifica fornita con il prodotto ed al paragrafo tecnico presente in fondo al manuale. Pagina 9 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 8) La scheda Notifiche infine consente di impostare una o più azioni volte a notificare agli operatori dichiarati all’interno della gestione di MSSQL Server Agent l’esecuzione del completamento del processo stesso. La sua configurazione consente l’utilizzo di vari strumenti di notifica tra cui citiamo il servizio Posta Elettronica Database nativo nelle versioni commerciali di MSSQL Server. Pagina 10 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] 9) Tramite il flag elimina il processo automaticamente è possibile eliminare il processo dopo il completamento, specificando inoltre la condizione che attiverà l'eliminazione. 10) Al termine dell’esecuzione, in base alle impostazioni sopra citate, riceveremo un a o più e-mail di notifica contenente l’esito delle attività svolte. Pagina 11 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] Paragrafo tecnico: Posta elettronica database Posta elettronica database è una soluzione aziendale per l'invio di messaggi di posta elettronica dal motore di database di SQL Server, esso consente alle applicazioni di inviare messaggi di posta elettronica agli utenti. Tali messaggi possono includere risultati di query e file provenienti da qualunque risorsa disponibile in rete. Per ridurre la superficie di attacco di MSSQL Server, le stored procedure di Posta elettronica database sono disattivate per impostazione predefinita, per attivarle è necessario utilizzare lo strumento Configurazione superficie di attacco di SQL Server. Per avviare la configurazione guidata Posta elettronica database espandere Gestione, fare clic con il pulsante destro del mouse su Posta elettronica database, quindi scegliere Configura Posta elettronica database Pagina 12 di 13 Datalog Documentazione King [Applicazione jobScheduler su DB SQL] A questo punto una procedura guidata ci condurrà all’interno del processo di configurazione nel quale andremo ad indicare i parametri di invio della posta elettronica forniti dal nostro ISP. Posta elettronica database non è disponibile in MSSQL Server Express Edition Pagina 13 di 13