什么是SQL Server备份/维护计划?

时间:2008-11-17 20:58:02

标签: sql-server backup maintenance

作为this question的后续内容,我想知道您的SQL Server备份/维护计划是什么,以及如何让我的更好。

目前,我正在从计划向导中运行两个简单的维护计划。

第一次每晚都会运行,几乎可以做任何事......

  • 完整数据库和事务日志备份
  • 完整性检查,重建索引,重新计算统计数据等(我检查了除增量备份之外的所有内容)

另一个每三个小时运行一次并进行增量备份(我很偏执,我知道这可能是一种过度杀伤)。

备份到磁盘,完整备份发送到SAN,保留一周。

您怎么看?这是一个明智的计划吗?有什么建议吗?

编辑:这是SQL Server 2005.DB为5GB,每月增长约1GB。

6 个答案:

答案 0 :(得分:7)

听起来不错。我更偏执了。我每天进行两次完整备份和每小时事务日志备份。取决于数据库或课程的大小。备份直接完成到磁盘,然后每晚备份到磁带。

您可能不需要每天都执行维护任务。我只在周末做这些,除了这一张我们每晚重新索引的桌子。这又取决于数据库的大小和活动。

如果您有足够的CPU和磁盘空间,您可以压缩磁盘备份以节省空间并更快地转移到磁带或其他位置。

答案 1 :(得分:3)

您应该与您的用户/客户/数据保管人交谈 - 无论您怎么称呼他们。他们需要清楚地了解他们可以失去多少工作。如果没有SLA,请写一个SLA。当谈到坏消息时,你不希望有任何惊喜。

他们还需要了解恢复需要时间。您需要规划恢复计划以创建可接受的恢复时间。这可能意味着每5天完成一次备份,4次差异和日志备份。正如马库斯·埃里克森所说的那样,这并不是疯狂或偏执 - 这完全取决于你的信息和你的组织对它的美元价值。

答案 2 :(得分:2)

我不认为你是每3小时运行一次备份的人。基本上,您的备份计划必须通过还原要求来衡量。你在恢复期间能够承受多长时间,而在你失败之前你愿意失去多少数据。对于SQL Server,您可以通过向备份计划添加事务日志备份来大幅减少您愿意丢失的数据量。许多人每隔几分钟就会这样做,具体取决于通过系统的交易量。要执行还原,只需还原最后一个完整,最后一个增量,然后还原所有事务日志备份。这可以为您提供最小的数据丢失,但是应用所有事务日志备份可能需要一些时间。我经常看到以下内容: 完整备份 - 每周 增量备份 - 每晚 日志备份 - 每隔几分钟根据要求(可能每小时一次等)

答案 3 :(得分:1)

请记住在您实际尝试从您创建的备份(到测试系统)进行还原的情况下执行firerill。这应该每月一次。

答案 4 :(得分:1)

我向客户推荐的最低限度是每晚对数据库进行一次完整备份,然后每隔3小时进行一次事务备份。我总是惊讶于有多少人从未设置备份。那些总是糟糕的电话。

答案 5 :(得分:0)

在我看来,最好的方法是:

每12小时进行一次完整数据库备份

BACKUP DATABASE database TO DISK = 'd:/full.bak'

每六个小时进行一次差异备份,如果出现故障,则可以更轻松地恢复过程

BACKUP DATABASE database TO DISK = 'd:/diff.bak' WITH DIFFERENTIAL

当然还有每小时更好的事务日志备份。

BACKUP LOG database TO DISK = 'log.bak'

如果失败,恢复过程将是下一步:

  • 上次完整备份
  • 最后一次差异备份
  • 最后一个交易记录

必须承认,使用完整恢复模型以提供时间点恢复更好。