我有两个备份两个不同数据库的作业。
作业 1 备份 DB1
作业 2 备份 DB2
DB1 由于驱动器 1 上的空间不足导致作业 1 失败而无法备份。为了解决这个问题,我只需要添加空间。没什么大不了的。当这个问题已经发生一个月时,我今天被告知了这一点。是的,我知道这很疯狂,但这是开发人员
我想获得 DB1 的完整备份历史记录。我知道我可以从 msdb.dbo.backupset 表中检索成功的备份信息,但我想知道是否存在显示数据库备份失败的查询。
我下面的查询显示了特定数据库从 12/31/13-1/27/14 的备份历史记录。信息包括服务器、数据库名称、备份开始和结束时间、备份数据库所需的总时间、数据库大小和备份集名称。
SELECT
distinct CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server,
msdb.dbo.backupset.database_name,
msdb.dbo.backupset.backup_start_date,
msdb.dbo.backupset.backup_finish_date,
CAST((DATEDIFF(second, msdb.dbo.backupset.backup_start_date,msdb.dbo.backupset.backup_finish_date)) AS varchar)+ ' secs ' AS [Total Time] ,
Cast(msdb.dbo.backupset.backup_size/1024/1024 AS numeric(10,2)) AS 'Backup Size(MB)',
msdb.dbo.backupset.name AS backupset_name
FROM msdb.dbo.backupmediafamily
INNER JOIN msdb.dbo.backupset ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id
--Enter your database below
--and database_name = 'db_name_here'
and msdb.dbo.backupset.backup_start_date>'2013-12-31' and msdb.dbo.backupset.backup_start_date<'2014-01-27 23:59:59'
ORDER BY
msdb.dbo.backupset.database_name,
msdb.dbo.backupset.backup_start_date
Run Code Online (Sandbox Code Playgroud)
有没有办法通过修改我的代码来获取该信息?我可以通过执行针对 sysjobhistory …