Bre*_*ney 2 sql-server backup log-shipping disaster-recovery
我从 SERVER_A 进行日志传送,每 10 分钟备份一次。我每 20 分钟将日志恢复到 SERVER_B。当我从 SERVER_B 到 SERVER_C 进行 DWH 加载时,我暂停恢复
我从 SERVER_B 进行报告,我想知道在 SERVER_A 上进行备份的时间,以便我可以向用户展示他们看到的数据有多新鲜
我无法使用 SERVER_A 的上次日志备份时间,因为我不确定该日志是否已恢复到 SERVER_B。
我无法使用 SERVER_B 的上次恢复时间,因为我不知道 SERVER_A 上实际进行备份的时间。
对于获得数据新鲜度的好方法有什么想法吗?
您不需要依赖备份历史记录:您只需检查恢复历史记录即可!除了具有备份历史记录外,msdb还保存恢复历史记录。
您可以使用以下示例查询来根据要恢复的最新备份来查找数据新鲜度。
SELECT TOP 5
RestoredDbName = rh.destination_database_name,
RestoreDateTime = rh.restore_date,
SourceServer = bs.server_name,
SourceDbName = bs.databse_name,
DataFreshnessDateTime = bs.backup_finish_date
FROM msdb.dbo.restorehistory AS rh
JOIN msdb.dbo.backupset AS bs ON rh.backup_set_id = bs.backup_set_id
WHERE bs.server_name = 'Log Shipping Source'
AND bs.database_name = 'Log Shipping Source'
ORDER BY bs.backup_finish_date DESC;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
73 次 |
| 最近记录: |