SQL Server ed ALM su database


Il blog di Alessandro Alpi
Archivio Posts
Anno 2018

Anno 2017

Anno 2016

Anno 2015

Anno 2014

Anno 2013

Anno 2012

Anno 2011

Anno 2010

Anno 2009

Anno 2008

Anno 2007

Anno 2006

SQL Maintenance Plan e delete dei Job

Se vi fosse mai capitato di scrivere dei Maintenance Plans su sql server, saprete che insieme ad essi viene creato anche un job con tanto di eventuale schedulazione.
Per chi non conoscesse la funzionalità, provate a controllare sul vostro sql server (a partire dalla Workgroup edition) via Management studio alla cartella Management direttamente sul server:

da quella cartella è possibile (tasto destro, new maintenance plan.. Inserire nome) creare il vostro piano di manutenzione, tramite un'interfaccia simile a quella fornita da VS BIDS per gli Integration Services.
La toolbox, a differenza di quella fornita su BIDS, è ridotta ai soli task per la manutenzione del server:


Sopra al workflow disegnato, troviamo un'area in cui definire la schedulazione, proprio come succede per un qualunque altro job creato tramite SQL Server Agent.
Creandone una e salvando il piano di manutenzione, verrà creato un job automaticamente nel nodo relativo all'agent:


Il nome è definito da <Nome Maintenance Plan>.<Nome Schedulazione>.

Con questo post voglio farvi notare che, siccome vi è un legame automatico tra un job ed un Piano di manutenzione, bisogna fare attenzione in caso di modifica di quest'ultimo.
Perchè faccio presente questo?
Perchè il salvataggio di un piano di manutenzione porta una completa drop/create del job.
Quindi, RICORDATEVI di non personalizzare il job, ad esempio aggiungendo un task, perchè dopo un nuovo salvataggio il job relativo al piano viene ricreato.

Questo giusto perchè può succedere che, a fianco di uno step automaticamente generato, potrebbe essere comodo lanciare altri job, o ancora aggiungere uno step che lancia una stored procedure, ecc..
Una pratica corretta potrebbe essere inserire la modifica direttamente nel flow del maintenance plan, anche se non è detto che le operazioni debbano essere legate.
In questo ultimo caso, è preferibile schedulare diversamente due job, che effettuano le operazioni di manutenzione in tempi diversi, senza vincoli di precedenza..

Stay Tuned! 

Categoria: SQL Server 2008
lunedì, 19 mar 2012 Ore. 11.30

Messaggi collegati


Statistiche
  • Views Home Page: 601.393
  • Views Posts: 1.068.865
  • Views Gallerie: 641.208
  • n° Posts: 484
  • n° Commenti: 273



















Copyright © 2002-2007 - Blogs 2.0
dotNetHell.it | Home Page Blogs
ASP.NET 2.0 Windows 2003