管理SQL备份集

时间:2011-09-08 11:29:20

标签: sql-server database-backups

我想说我正在缩小SQL Server中初学者和中级用户之间的差距。我通过谷歌搜索自学了,但我找不到与这个问题相关的任何东西。

我有一个经历过很多更改的数据库,每个更改都为我的备份文件添加了一个完整的备份集和一些大小。我认为这是一种负担,因为我很确定我不需要旧的备份集,但我希望保留它们。

有人能指出一个很好的教程或保留SQL备份的最佳实践,或者只是提供一些好的建议吗?

2 个答案:

答案 0 :(得分:1)

通常,您可以根据需要每个(小时/天/周)进行备份,并使这些备份覆盖每个以前的备份。

然后,您可以将这些单个文件存档到磁带,异地,其他服务器等,并根据业务/法律需要选择您想要保留的数量。

因此,在回答您的问题时,要将备份集保持在合理的大小,请将其设置为覆盖文件中的现有备份,然后以您认为合适的任何间隔将文件存档到seperare位置。 / p>

答案 1 :(得分:1)

当您的应用程序正在使用并且数据库中包含真实数据时,您需要进行“真实”备份,因为dougajmcdonald已经在his answer中进行了解释。

但是,只要您的项目仍处于开发阶段,您基本上就是因为想要跟踪表定义更改等内容而进行备份吗?

如果是,那么如何将更改作为T-SQL脚本存储在源代码管理中,以及访问数据库的实际代码呢?

有些工具会为现有数据库生成CREATE TABLE脚本和类似的东西 以下是相关SO问题的一些链接:

(如果你想找到更多信息,请搜索“sql server source control”)

还有像FluentMigrator这样的开源项目可以帮助您跟踪源代码中的数据库更改(在这种情况下为.net,但是其他语言也有类似的工具)。
来自Fluent Migrator原作者的Here is a tutorial,解释了Fluent Migrator的用途,为什么需要它以及它是如何工作的。