Tsql скрипт , который выводит инфу по бэкапу

Административные скрипты MS SQL > Tsql скрипт , который выводит инфу по бэкапу
30.04.2014 14:52:57


Наиболее часто встречающиеся слова в статье:

[backupset] [backup_size] [physical_device_name] [Servername] [VARCHAR] [database_name] [   msdb] [backupmediafamily] [media_set_id] [sysdatabases]


Статья:

CREATE TABLE #t (Servername VARCHAR(255) ,DbName VARCHAR(255),dates DATETIME,backup_size FLOAT, physical_device_name  VARCHAR(255))

insert into #t

SELECT 

   CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server,

   msdb.dbo.backupset.database_name, 

   MAX(msdb.dbo.backupset.backup_finish_date) AS last_db_backup_date

   ,cast( max(backup_size) AS float)/1024/1024

   , physical_device_name

 

FROM   msdb.dbo.backupmediafamily

   INNER JOIN msdb.dbo.backupset ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id

 INNER JOIN sys.sysdatabases ON sys.sysdatabases.name = msdb.dbo.backupset.database_name

WHERE  msdb..backupset.type = 'D'

GROUP BY

   msdb.dbo.backupset.database_name ,backup_size, physical_device_name

ORDER BY 

   last_db_backup_date

   

   select Servername,DbName  [База_данных],max(dates) AS дата_резервного_копирования

  ,[Размер Back Up Мб]=(SELECT TOP 1 backup_size FROM #t h2 WHERE   h.DbName=h2.DbName order BY h2.dates DESC )

  ,  [Расположение]=(SELECT TOP 1 physical_device_name FROM #t h2 WHERE   h.DbName=h2.DbName order BY h2.dates DESC )

   from #t h

   

   GROUP BY Servername,DbName

 

drop table #t