2

我们的产品包含多个包含自定义应用程序安全信息的表格。在某些情况下,这些 securityinfo 表可能包含大量行(在一种情况下为 1300 万行),这些表用于加快查询速度,并且可能从头开始重建,但这在时间/处理能力等方面代价高昂。

应用程序的设计方式,更有效(在程序运行期间)删除安全部分的记录,然后插入新记录,而不是识别要保留/更新的记录并插入不存在的记录.

不幸的是,当数据库恢复模式设置为完整时,此过程会生成大量事务日志。

在 SQL 2005+ 中是否有可能在具有完整恢复模式的数据库中拥有一个未记录的表(简单恢复模式)?

我们可以在 Web 应用程序/数据库首次启动时重建 securityinfo 表以防恢复。

或者,具有简单恢复模型的并行数据库是最佳解决方案。

干杯蒂姆

4

1 回答 1

1

据我所知,只能为每个数据库设置恢复模型,可能是因为事务日志是针对整个数据库的。或者正如BOL 所说

恢复模型是一种数据库属性,它控制如何记录事务、事务日志是否需要(并允许)备份以及可用的恢复操作类型。

(重点是我的)。因此,您最好的选择是将这个特定的表移动到另一个数据库,或者查看内存中的数据库/缓存,因为该表听起来像是可以从权威数据源轻松重建的缓存。

于 2012-05-16T16:39:56.717 回答