我有两个数据库:
这个是由第三方设置的,他们不允许我们将数据库更改为完全恢复。所以据我了解,如果数据库处于简单模式,那么备份的唯一选项就是完整备份?我们需要能够以 15 分钟为增量进行恢复。如果不每 15 分钟进行一次完整备份,这可能吗?
我们对其他数据库拥有完全控制权,并且希望能够以 15 分钟为间隔进行恢复。如何在 SQL Server 2008 中进行设置?我们应该进行事务处理还是差异处理,或者两者兼而有之?
如何将数据库从简单恢复模式更改为完整恢复模式?
答案1
所以我的理解是,如果数据库处于简单模式,那么备份的唯一选项就是完整备份?
是的。
我们需要能够以 15 分钟为增量进行恢复。如果不每 15 分钟进行一次完整备份,这可能吗?
啊,是的。话虽如此,但这根本不实用。
那是什么设置?不允许进行此更改毫无意义。就像零一样。这实际上是严重的疏忽,完全使任何备份方式无效。我从未听说过这种要求。有很多糟糕的要求,但不允许事务日志工作是我从未听说过的。
如何在 SQL Server 2008 中设置此功能?我们应该进行事务处理还是差异处理,或者两者兼而有之?
有没有想过事务日志备份?还有第三种选择。基本上,您可以每周进行一次完整备份,每天进行一次差异备份,每 15 分钟进行一次 tx 日志备份,并使用日志文件备份立即(近乎实时)自动将内容从数据库中移出。
3.如何将数据库从简单恢复模式更改为完整恢复模式?
这是一个 RTFM 问题。检查数据库的属性,在那里你会找到设置。更改它,按确定,完成。
答案2
为了扩展您在其他问题中提供的答案(SQL Server 2008 备份基础知识):
如果您需要 15 分钟恢复,但不允许更改为完整恢复模式,则需要每 15 分钟进行一次完整或差异备份,这非常疯狂。要求您进行 15 分钟恢复,但不能使用事务日志备份,这毫无意义。制定该政策的人应该被免职。
正如您在其他问题中讨论的那样,对于这样的数据库,您需要对数据库执行每周完整备份和每日差异备份之类的操作。然后,您将创建一个 SQL 维护计划,每 15 分钟执行一次事务日志备份。这三种备份类型(完整、差异、事务日志)旨在组合使用,而不是两者之一。
在 SSMS GUI 中,您可以通过打开数据库的“属性”对话框并转到“选项”部分来更改它。在 T-SQL 中,您可以执行以下操作:
ALTER DATABASE my_database_name SET RECOVERY FULL
GO
从这个问题和您的另一个问题可以看出,如果您要在生产中使用 SQL Server,您的团队中的某个人需要获取一些文档、接受一些培训等,并学习 SQL Server 的基础知识。