SELECT
CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server,
msdb.dbo.backupset.database_name,
msdb.dbo.backupset.backup_start_date,
msdb.dbo.backupset.backup_finish_date,
msdb.dbo.backupset.expiration_date,
CAST((CAST(DATEDIFF(s, msdb.dbo.backupset.backup_start_date, msdb.dbo.backupset.backup_finish_date) AS int))/60 AS varchar)+ ' minutes, '
+ CAST((CAST(DATEDIFF(s, msdb.dbo.backupset.backup_start_date, msdb.dbo.backupset.backup_finish_date) AS int))%60 AS varchar)+ ' seconds'
AS [Total Time],
CASE msdb.dbo.backupset.is_copy_only
WHEN 1 THEN 'Yes'
WHEN 0 THEN 'No'
END AS is_copy_only,
CASE msdb..backupset.type
WHEN 'D' THEN 'Database'
WHEN 'L' THEN 'Log'
WHEN 'I' THEN 'Differential'
END AS backup_type,
CONVERT(DECIMAL(10, 2), msdb.dbo.backupset.backup_size / 1024. / 1024.) AS backup_size_mb,
msdb.dbo.backupmediafamily.logical_device_name,
msdb.dbo.backupmediafamily.physical_device_name,
msdb.dbo.backupset.name AS backupset_name,
msdb.dbo.backupset.description
FROM msdb.dbo.backupmediafamily
INNER JOIN msdb.dbo.backupset
ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id
WHERE (CONVERT(datetime, msdb.dbo.backupset.backup_start_date, 102) >= GETDATE() - 7)
--AND msdb.dbo.backupset.database_name in ('db_name')
--AND msdb..backupset.type = 'D'
ORDER BY
msdb.dbo.backupset.database_name ASC,
msdb.dbo.backupset.backup_start_date desc
CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server,
msdb.dbo.backupset.database_name,
msdb.dbo.backupset.backup_start_date,
msdb.dbo.backupset.backup_finish_date,
msdb.dbo.backupset.expiration_date,
CAST((CAST(DATEDIFF(s, msdb.dbo.backupset.backup_start_date, msdb.dbo.backupset.backup_finish_date) AS int))/60 AS varchar)+ ' minutes, '
+ CAST((CAST(DATEDIFF(s, msdb.dbo.backupset.backup_start_date, msdb.dbo.backupset.backup_finish_date) AS int))%60 AS varchar)+ ' seconds'
AS [Total Time],
CASE msdb.dbo.backupset.is_copy_only
WHEN 0 THEN 'No'
END AS is_copy_only,
CASE msdb..backupset.type
WHEN 'D' THEN 'Database'
WHEN 'L' THEN 'Log'
WHEN 'I' THEN 'Differential'
END AS backup_type,
CONVERT(DECIMAL(10, 2), msdb.dbo.backupset.backup_size / 1024. / 1024.) AS backup_size_mb,
msdb.dbo.backupmediafamily.logical_device_name,
msdb.dbo.backupmediafamily.physical_device_name,
msdb.dbo.backupset.name AS backupset_name,
msdb.dbo.backupset.description
FROM msdb.dbo.backupmediafamily
--AND msdb.dbo.backupset.database_name in ('db_name')
--AND msdb..backupset.type = 'D'
ORDER BY
msdb.dbo.backupset.database_name ASC,
msdb.dbo.backupset.backup_start_date desc
----------------------------------------------------------------------------------
SELECT bs.database_name,
backuptype = CASE
WHEN bs.type = 'D' AND bs.is_copy_only = 0 THEN 'Full Database'
WHEN bs.type = 'D' AND bs.is_copy_only = 1 THEN 'Full Copy-Only Database'
WHEN bs.type = 'I' THEN 'Differential database backup'
WHEN bs.type = 'L' THEN 'Transaction Log'
WHEN bs.type = 'F' THEN 'File or filegroup'
WHEN bs.type = 'G' THEN 'Differential file'
WHEN bs.type = 'P' THEN 'Partial'
WHEN bs.type = 'Q' THEN 'Differential partial'
END + ' Backup',
CASE bf.device_type
WHEN 2 THEN 'Disk'
WHEN 5 THEN 'Tape'
WHEN 7 THEN 'Virtual device'
WHEN 9 THEN 'Azure Storage'
WHEN 105 THEN 'A permanent backup device'
ELSE 'Other Device'
END AS DeviceType,
bms.software_name AS backup_software,
bs.recovery_model,
bs.compatibility_level,
BackupStartDate = bs.Backup_Start_Date,
BackupFinishDate = bs.Backup_Finish_Date,
LatestBackupLocation = bf.physical_device_name,
backup_size_mb = CONVERT(DECIMAL(10, 2), bs.backup_size / 1024. / 1024.),
compressed_backup_size_mb = CONVERT(DECIMAL(10, 2), bs.compressed_backup_size / 1024. / 1024.),
database_backup_lsn, -- For tlog and differential backups, this is the checkpoint_lsn of the FULL backup it is based on.
checkpoint_lsn,
begins_log_chain,
bms.is_password_protected
FROM msdb.dbo.backupset bs
LEFT JOIN msdb.dbo.backupmediafamily bf
ON bs.[media_set_id] = bf.[media_set_id]
INNER JOIN msdb.dbo.backupmediaset bms
ON bs.[media_set_id] = bms.[media_set_id]
WHERE bs.backup_start_date > (GETDATE() - 7) --only look at last two months
-- AND bs.database_name in ('DB_name')
ORDER BY bs.database_name ASC,
bs.Backup_Start_Date DESC;
backuptype = CASE
WHEN bs.type = 'D' AND bs.is_copy_only = 0 THEN 'Full Database'
WHEN bs.type = 'D' AND bs.is_copy_only = 1 THEN 'Full Copy-Only Database'
WHEN bs.type = 'I' THEN 'Differential database backup'
WHEN bs.type = 'L' THEN 'Transaction Log'
WHEN bs.type = 'F' THEN 'File or filegroup'
WHEN bs.type = 'G' THEN 'Differential file'
WHEN bs.type = 'P' THEN 'Partial'
WHEN bs.type = 'Q' THEN 'Differential partial'
END + ' Backup',
CASE bf.device_type
WHEN 5 THEN 'Tape'
WHEN 7 THEN 'Virtual device'
WHEN 9 THEN 'Azure Storage'
WHEN 105 THEN 'A permanent backup device'
ELSE 'Other Device'
END AS DeviceType,
bms.software_name AS backup_software,
bs.recovery_model,
bs.compatibility_level,
BackupStartDate = bs.Backup_Start_Date,
BackupFinishDate = bs.Backup_Finish_Date,
LatestBackupLocation = bf.physical_device_name,
backup_size_mb = CONVERT(DECIMAL(10, 2), bs.backup_size / 1024. / 1024.),
compressed_backup_size_mb = CONVERT(DECIMAL(10, 2), bs.compressed_backup_size / 1024. / 1024.),
database_backup_lsn, -- For tlog and differential backups, this is the checkpoint_lsn of the FULL backup it is based on.
checkpoint_lsn,
begins_log_chain,
bms.is_password_protected
-- AND bs.database_name in ('DB_name')
ORDER BY bs.database_name ASC,
bs.Backup_Start_Date DESC;
SELECT TOP 100 [s].[database_name]
,[m].[physical_device_name]
,CAST(CAST([s].[backup_size] / 1000000 AS int) AS varchar(14))+' '+'MB' AS [bkSize]
,CAST(DATEDIFF([second],[s].[backup_start_date],[s].[backup_finish_date]) AS varchar(4))+' '+'Seconds' AS [TimeTaken]
,[s].[backup_start_date]
,[s].[backup_finish_date]
,CAST([s].[first_lsn] AS varchar(50)) AS [first_lsn]
,CAST([s].[last_lsn] AS varchar(50))
AS [last_lsn]
,CASE [s].[type]
WHEN 'D' THEN 'Full'
WHEN 'I' THEN 'Differential'
WHEN 'L' THEN 'Transaction Log'
END AS [BackupType]
,[s].[server_name]
,[s].[recovery_model]
FROM [msdb].[dbo].[backupset] AS [s] INNER JOIN [msdb].[dbo].[backupmediafamily] AS [m]
ON [s].[media_set_id] = [m].[media_set_id]
WHERE [s].[database_name] = DB_NAME() -- Remove this line for all the
database
AND [s].[type] = 'D'
ORDER BY [backup_start_date] DESC
,[backup_finish_date]
WHEN 'I' THEN 'Differential'
WHEN 'L' THEN 'Transaction Log'
END AS [BackupType]
AND [s].[type] = 'D'
ORDER BY [backup_start_date] DESC
,[backup_finish_date]
Comments
Post a Comment