Je voudrais interroger pour toutes les bases de données (dans l'instance SQL Server 2008) la date à laquelle la dernière sauvegarde du journal des transactions a été effectuée. Comment faire ça? Je sais que cette information est quelque part, mais je ne sais pas où.SQL Server: comment interroger la dernière sauvegarde du journal des transactions?
13
A
Répondre
20
SELECT d.name,
MAX(b.backup_finish_date) AS backup_finish_date
FROM master.sys.sysdatabases d
LEFT OUTER JOIN msdb..backupset b
ON b.database_name = d.name
AND b.type = 'L'
GROUP BY d.name
ORDER BY backup_finish_date DESC
4
Je recommande d'utiliser ce script modifié de sorte que vous pouvez voir que BD est en plein ou BULK_LOGGED et ne pas avoir de BACKUP LOG.
SELECT d.name,
d.recovery_model_desc,
MAX(b.backup_finish_date) AS backup_finish_date
FROM master.sys.databases d
LEFT OUTER JOIN msdb..backupset b
ON b.database_name = d.name
AND b.type = 'L'
GROUP BY d.name, d.recovery_model_desc
ORDER BY backup_finish_date DES
En regardant la sortie de cette instruction, je vois NULL pour backup_finish_date ... qu'est-ce que cela signifie? http://stackoverflow.com/questions/40050221/sql-server-what-exactly-is-the-backup-finish-date-in-master-sys-databases –