今天一同事,問我上個月還原UAT的數據庫,是哪天的生產數據庫的的備份。因爲之前口頭上確認好使用哪天的備份,但沒有書面記錄下來。所以無法確定是哪天的備份。然而開發對哪天的數據庫非常糾結,非要確定備份日期。無奈,查了磁帶的申請記錄也剛好是口頭協議,崩潰!!備份文件也因磁盤空間的問題刪除。因此無法從現有的資料中找到需要的備份日期。
思考了一下,因爲我們的DB媒體都有備份的只要查備份記錄不就可以找到需要的備份時間了嗎?查了一下,UAT的環境是沒有數據庫備份的。也就是說無法證明從那天開始備份的。一時無語。
查看了一下幫助文檔(摘錄如下):
backupset (Transact-SQL)
每個備份集在表中佔一行。“備份集”包含來自單個成功備份操作的備份。RESTORE、RESTORE FILELISTONLY、RESTORE HEADERONLY 和 RESTORE VERIFYONLY 語句對指定的一個或多個備份設備上的媒體集中的單個備份集進行操作。
此表存儲在 msdb 數據庫中。
(摘錄完成)。
也就是說會把數據庫的備份時間restore 到backupset 系統表上。
使用SQL:
select database_name, [type], max(backup_finish_date) f
from msdb..backupset
where [type] = 'D' or [type] = 'L' or [type]='I'
group by database_name, [type]
結果如下:
亦可以通過:
屬性獲得。