Welcome

首页 / 数据库 / SQLServer / SQL Server备份历史记录分析

SQL Server备份历史记录分析2010-11-13 IT专家网 李恩问题

在数据库管理员的日常任务中,数据库备份占据了很重要的位置。这个任务一般通过维护计划、定期的SQL Server Agent Jobs或者第三方工具的执行来完成。考虑到备份的重要性,有必要定期地分析这个过程的性能和效率。那么我们要如何才能洞察任何数据备份过程的性能呢?

专家解答

让我们通过一些不同的脚本来看看能够洞察到什么。为了达到这篇文章的目的,我在这个例子中创建了一个叫做BackupReport的数据库。基于测试目的,执行全日志,差异日志和事务日志来列出脚本的值。查看下面的脚本:

脚本 – 创建备份过程统计数据
SELECT s.database_name,

m.physical_device_name, cast(s.backup_size/1000000 as varchar(14))+" "+"MB" as bkSize, CAST (DATEDIFF(second,s.backup_start_date , s.backup_finish_date)AS VARCHAR(4))+" "+"Seconds" TimeTaken, s.backup_start_date, CASE s.[type] WHEN "D" THEN "Full" WHEN "I" THEN "Differential" WHEN "L" THEN "Transaction Log" END as BackupType, s.server_name, s.recovery_model FROM msdb.dbo.backupset s inner join msdb.dbo.backupmediafamily m ON s.media_set_id = m.media_set_id WHERE s.database_name = "BackupReport" ORDER BY database_name, backup_start_date, backup_finish_date

这是基于我们例子的结果:

现在,我们具有某个特定数据库的所有备份过程的统计数据。有了这些数据,我们可以分析某个具体时期或不同备份类型的变化。