Spesso mi capita di dover effettuare il backup di SQL, ma la procedura a disposizione nella Management Console mi sta stretta in quanto carente di possibilità di personalizzazione.
Allora ho deciso di creare uno script che mi consentisse, ad esempio, di effettuare un backup giornaliero contenente del file di destinazione il giorno della settimana (così da avere BackupLunedì, BackupMartedì, ecc.)
Creare un file con estensione .sql che contenga:
DECLARE @MyFileName varchar(50)
SELECT @MyFileName = (SELECT ‘C:\BackupSQL\Backup Database NOMEDELDATABASE – ‘ + datename(dw,getdate()) + ‘.bak’)
BACKUP DATABASE [NOMEDELDATABASE] TO DISK=@MyFileName WITH NOFORMAT, INIT, NAME = N’NOME DEL DATABASE 2013-Completo Database Backup‘, SKIP, NOREWIND, NOUNLOAD, STATS = 10
GO
osql -S NOMESERVER\NOMEISTANZA -E -i “Path_e_nome_del_file_suddetto.sql” -n
osql -S SERVER\ISTANZA -E -i backup.sql -n
BACKUP DATABASE NOMEDATABASE TO DISK = ‘c:\backups\backup.bak‘
GO
osql -S MIOSERVER\SHAREPOINT -E -Q “SELECT name FROM sysdatabases”