do pokazywania ostatnich pełnych kopii zapasowych, różnicowych i dzienników dla każdej bazy danych, biorąc pod uwagę pokazywanie wartości null, jeśli nigdy nie zostanie wykonana kopia zapasowa . za pomocą przestawnej (zmodyfikowanej ze źródła )
zauważ, że bez dołączenia do master.sys.dat baz danych i polegania tylko na msdb.dbo.backupset nie znajdziesz dbs, które nie mają kopii zapasowych
SELECT name ,
recovery_model_desc ,
state_desc ,
d AS 'Last Full Backup' ,
i AS 'Last Differential Backup' ,
l AS 'Last log Backup'
FROM ( SELECT db.name ,
db.state_desc ,
db.recovery_model_desc ,
type ,
backup_finish_date
FROM master.sys.databases db
LEFT OUTER JOIN msdb.dbo.backupset a ON a.database_name = db.name
) AS Sourcetable
PIVOT
( MAX(backup_finish_date) FOR type IN ( D, I, L ) ) AS MostRecentBackup
Na podstawie żądania @SQLBoy możemy napisać poniższe zapytanie, aby uwzględnić w zapytaniu BackupSize i BackupSet.Name. Pominąłem dane przestawne i upraszczam je
WITH backupsetSummary
AS ( SELECT bs.database_name ,
bs.type bstype ,
MAX(backup_finish_date) MAXbackup_finish_date
FROM msdb.dbo.backupset bs
GROUP BY bs.database_name ,
bs.type
),
MainBigSet
AS ( SELECT db.name ,
db.state_desc ,
db.recovery_model_desc ,
bs.type ,
bs.name AS BackupSetName ,
bs.backup_size ,
bs.backup_finish_date
FROM master.sys.databases db
LEFT OUTER JOIN backupsetSummary bss ON bss.database_name = db.name
LEFT OUTER JOIN msdb.dbo.backupset bs ON bs.database_name = db.name
AND bss.bstype = bs.type
AND bss.MAXbackup_finish_date = bs.backup_finish_date
)
SELECT *
FROM MainBigSet
możesz użyć następującego skryptu:
1) jeśli chcesz uzyskać najnowszą kopię zapasową, użyj tylko następującego polecenia:
odniesienie: http://blog.sqlauthority.com/2010/11/04/sql-server-finding-last-backup-time-for-all-database/
2) jeśli chcesz uzyskać historię kopii zapasowych dla wszystkich baz danych w ciągu ostatnich siedmiu dni:
odniesienie: http://www.mssqltips.com/sqlservertip/1601/script-to-retrieve-sql-server-database-backup-history-and-no-backups/
źródło
Data ostatniej kopii zapasowej dla wszystkich baz danych. Prosty.
źródło
Myślę, że poniżej znajduje się zapytanie, na które wszyscy szukaliśmy:
źródło