Rac*_*hel 19 sql-server-2005 sql-server backup
我们收到了有关查询运行缓慢或在清晨超时的报告,我看到的唯一一项我认为可能会影响它的作业是我们的数据库备份作业。
数据库本身大约有 300GB,备份工作从凌晨 4:30 开始,直到早上 7:00 之后才完成。我们备份作业的当前语法是:
BACKUP DATABASE [DatabaseName]
TO DISK = N'E:\Database Backups\DatabaseName.Bak'
WITH INIT, NOUNLOAD, NAME = N'DatabaseName.Bak',
NOSKIP, STATS = 10, NOFORMAT
Run Code Online (Sandbox Code Playgroud)
E:\
是服务器上的一个分区,其中包含数据库和数据库备份。
还应该注意的是,这是一个虚拟服务器,而不是专用的独立服务器。在我们切换到虚拟服务器后,我们开始收到关于备份过程中速度变慢的抱怨,所以我认为这可能是相关的。
有没有办法运行此备份作业,使其在运行时不影响查询性能?
我们使用的是 SQL Server 2005
Aar*_*and 22
STATS
选项?您确定需要其他选项 ( NOUNLOAD
, NOSKIP
, NOFORMAT
) 吗?我没有对整个选项矩阵进行任何广泛的性能测试,但恕我直言,您应该只使用您知道需要的选项。这是一个常见问题,有多种解决方案,实际上取决于您的环境。让我们来看看它们:
1- 即时备份压缩
2008 年 R1 备份压缩在企业版中可用,在 2008R2 中它在标准版中可用。这是巨大的。它会为您节省很多时间。如果你可以升级就去吧。如果不能,请查看RedGate 的 HyperBak实用程序或Quest LiteSpeed。两者都有免费试用。
2- 完整和差异备份
我继承了一个 2TB 的产品数据库,导致我制定的 24/7 主要互联网公司出现很多超时。我们启用了完整备份和差异备份,这为我们节省了大量时间。我会在周日中午 12:00 活动低时进行完整备份,并在一周内进行差异化。这节省了很多空间。Diff 的工作与事务日志不同,因为它们处理更改的数据库页面。备份任何更改的页面。因此,您进行完整还原,然后进行差异还原以添加修改后的页面。
3- 你的瓶颈是什么?
瓶颈分析对于诊断很重要。您是否备份到与数据文件相同的磁盘阵列?您的数据文件是否被挂钩?备份期间数据磁盘的 DISK SEC/READ 和 DISK SEC/WRITE 是多少?我修改了备份以创建 4 个文件。每个文件都有自己的线程编写器,并且在我们的 SAN 中效果很好。测试一下,我只创建了 4 个备份文件就节省了 45 分钟。只要确保上面列出的磁盘指标很低。获得基线。
4- 复制到不同的服务器并备份
这个稍微高级一点。您必须确保复制的数据库是最新的,并且需要对此进行适当的监控。如果是这样,您可以只备份复制的数据库。