我如何估算一个30GB数据库的完整备份时间?
在这一刻大约需要50分钟。 我们可以改善吗?
谢谢
添加一下并总结其他答案:
我见过的最快速的备份是在维也纳我们的客户Bwin。 他们可以在36分钟内备份2TB。 在高端备份压缩数字上查看我的博客文章。
看看这个SQLCAT PDF ,具体来说:
希望这可以帮助!
你最近清理了你的MSDB吗? 布伦特·奥扎尔(Brent Ozar)写的关于你的数据库和备份有什么影响的文章
http://www.brentozar.com/archive/2009/05/brents-backup-bottleneck-msdb/
你正在运行什么版本的SQL服务器? 2008年可以做压缩备份,可以大大提高备份速度。 一旦我们在备份工作中开启了压缩function,我的一个客户备份就从一个小时到十分钟。
您的数据库物理文件(.MDF / .NDF)是否在备份的同一个磁盘上? 如果是这样,磁盘正在尝试读取数据库并同时写入备份。 备份到一个单独的独立磁盘应该有所帮助。
也可能是底层磁盘有问题 – 让存储工程师检查磁盘的完整性。
另一个要检查的是你的备份可能被另一个进程阻塞。 备份开始后执行命令SP_WHO2 ACTIVE并检查BlkBy列。 如果它包含一个数字 – 这是阻止备份的进程的进程ID,如果该列为空,则不会被阻止。
你的恢复速度有多快?
改进它的最好方法是使用第三方备份工具 – 例如Quest的LiteSpeed或Red Gate的SQLBackup。
也就是说,你多久运行一次完整的备份? 您是否实施了差异备份和传输日志备份?
对于30GB,50分钟似乎有点长,但是如果你的磁盘arrays处于压力之下,我可以看到这个过程需要很长时间。
不是我会推荐它,如果你closuresvalidation选项,它会大大减less时间。 我只会在复制到备用机器的备份上执行备份,并且还原到备份状态。
我肯定会去找Paul的Randal解决scheme。 但是我会检查msdb备份历史是否像SQLChicken那样大。 如果你在SQL 2008上,我会使用备份压缩,因为它是踢屁股。 我不知道即时文件初始化是否会对此有所帮助。 但也会尝试一下。 (testing使完美)
使用跟踪标志(3605,3213)将在错误日志中备份详细信息。
DBCC TRACEOFF(3605, –1) DBCC TRACEOFF(3213, –1)
要估计和检查可以从数据库或文件组中读取数据的速度,可以使用以下特殊选项来备份: DISK = 'NUL'
使用1222,1204将在errorlog中保持logging死锁。