SQL服务器:master.sys.databases中的backup_finish_date到底是什么
SQL Server: What exactly is the backup_finish_date in master.sys.databases
使用以下查询(来自 SQL Server: how to query when the last transaction log backup has been taken?)查询最后一个 backup_finish_date 时:
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 DESC
我所有数据库的 backup_finish_date 都是空的,这适用于恢复模式为 BULK_LOGGED、FULL 或 SIMPLE 的数据库。
这是否意味着 none 这些数据库已经备份了它们的事务日志(如链接问题的标题所示)?
是的,你是对的。如果你的 backup_finish_date
是 null
意味着它从未备份过。但是,msdb..backupset
可以是 modified/tempered。您可以检查备份类型的数据库的最后备份。
SELECT d.name,
d.recovery_model_desc,
b.type, -- type of backup
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
GROUP BY d.name, d.recovery_model_desc, b.type
ORDER BY backup_finish_date DESC
type Can be:
D = Database OR Full
I = Differential database
L = Log
F = File or filegroup
G =Differential file
P = Partial
Q = Differential partial
Can be NULL.
参考MSDN
使用以下查询(来自 SQL Server: how to query when the last transaction log backup has been taken?)查询最后一个 backup_finish_date 时:
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 DESC
我所有数据库的 backup_finish_date 都是空的,这适用于恢复模式为 BULK_LOGGED、FULL 或 SIMPLE 的数据库。
这是否意味着 none 这些数据库已经备份了它们的事务日志(如链接问题的标题所示)?
是的,你是对的。如果你的 backup_finish_date
是 null
意味着它从未备份过。但是,msdb..backupset
可以是 modified/tempered。您可以检查备份类型的数据库的最后备份。
SELECT d.name,
d.recovery_model_desc,
b.type, -- type of backup
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
GROUP BY d.name, d.recovery_model_desc, b.type
ORDER BY backup_finish_date DESC
type Can be:
D = Database OR Full
I = Differential database
L = Log
F = File or filegroup
G =Differential file
P = Partial
Q = Differential partial
Can be NULL.
参考MSDN