码迷,mamicode.com
首页 > 数据库 > 详细

SqlServer获取数据库最近全量备份时间

时间:2015-07-10 22:27:29      阅读:577      评论:0      收藏:0      [点我收藏+]

标签:sqlserver   sql   

应用场景,SqlServer的增量备份是在全量备份的基础上进行的,如果需要恢复的话,也需要先恢复全量备份,再恢复对应的增量备份文件。

例如,我们全量备份A数据库产生1.bak文件,此时再进行增量备份,将产生2.diff文件。

如果在恢复的时候,先恢复1.bak,再恢复2.diff,可以正常的恢复到原数据。

但是如果在这个过程中,又进行了另一次全量备份,那么,此时再想通过1.bak + 2.diff来进行恢复就会失败。

因为增量备份是针对最新的全量备份进行增量的,因此,我们需要判断生成1.bak全量备份的时间和SqlServer中最新全量备份时间是否一致。

如果不一致,证明后面的增量备份并非基于1.bak的全量备份进行的。


具体获取的指令如下:

SqlServer2003及以下版本可使用osql,SqlServer2005及以上可使用osql或sqlcmd (自行替换语句中参数$username, $password, $dbname)

osql.exe/sqlcmd.exe -U $username -P $password -d master -Q "SELECT MAX(Backup_finish_date) AS 'latest Backup Date' FROM msdb..backupset WHERE TYPE='D' and database_name = '$dbname' GROUP BY database_name"


返回的结果如下:

技术分享

SqlServer获取数据库最近全量备份时间

标签:sqlserver   sql   

原文地址:http://blog.csdn.net/xiaokfc/article/details/46833591

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!