Este script realiza un respaldo de todas tus bases de datos en el formato bd_añomesdiahoraminuto.BAK
Aunque SQL Server cuenta con planes de mantenimiento para respaldar las bases de datos, algunas veces es necesario hacer respaldos por nuestra cuenta para alguna prueba o simplemente por personalizar alguno de nuestros scripts.
Esper que este script pueda ayudarlos en sus tareas rutinarias como administrador de base de datos.
DECLARE @yyyy varchar(4),
@mm varchar(2),
@dd varchar(2),
@hh varchar(2),
@mi varchar(2),
@filepath varchar(200),
@str varchar(250),
@db varchar(128)
set @db = ''
WHILE exists (select name from master..sysdatabases where name > @db and name not in ('model','tempdb'))
BEGIN
select @db = min(name) from master..sysdatabases where name > @db and name not in ('model','tempdb')
SET @mm = convert(varchar,datepart(mm,getdate()))
if (datepart(mm,getdate()) < 10)
SET @mm = '0' + @mm
SET @dd = convert(varchar,datepart(dd,getdate()))
if (datepart(dd,getdate()) < 10)
SET @dd = '0' + @dd
SET @hh = convert(varchar,datepart(hh,getdate()))
if (datepart(hh,getdate()) < 10)
SET @hh = '0' + @hh
SET @mi = convert(varchar,datepart(mi,getdate()))
if (datepart(mi,getdate()) < 10)
SET @mi = '0' + @mi
set @yyyy = convert(varchar,datepart(yyyy,getdate()))
set @filepath = 'E:\MSSQL\Backup\' + @db+ '_' +@yyyy+@mm+@dd+@hh+@mi+'.BAK'
set @str = 'backup database ' + @db + ' to disk = ''' + @filepath + ''' with stats = 10'
--print @str
exec (@str)
END