小编Tra*_*vis的帖子

ALLOW_SNAPSHOT_ISOLATION 和 READ_COMMITTED_SNAPSHOT

大部分的论坛和榜样的网上总是建议同时拥有ALLOW_SNAPSHOT_ISOLATIONREAD_COMMITTED_SNAPSHOT设置为ON,每当别人问快照,行版本或类似的问题。

我想这两种设置中的 SNAPSHOT 一词都有些令人困惑。我认为,为了让数据库引擎对 READ_COMMITTED 默认行为使用行版本控制而不是锁定,无论设置如何,数据库READ_COMMITTED_SNAPSHOT都设置为 ON 。ALLOW_SNAPSHOT_ISOLATION

ALLOW_SNAPSHOT_ISOLATION设定被设定为ON只允许快照隔离启动事务(例如SET TRANSACTION ISOLATION级快照)时无论READ_COMMITTED_SNAPSHOT设置。

将这两个设置设置为 ON 的唯一原因是它需要具有 READ COMMITTED 行版本控制 快照隔离。

我的问题是,我的理解在某种程度上是错误的吗?并且这两个设置必须始终一起设置为 ON(特别是对于 READ COMMITTED 行版本控制)?

sql-server configuration isolation-level

43
推荐指数
3
解决办法
5万
查看次数

带有 LOG_BACKUP log_reuse_wait_desc 的 SQL Server 2012 简单恢复模型

虽然我在做我自己的调查,没有人知道为什么在数据库SIMPLE恢复模型LOG_BACKUPlog_reuse_wait_desc

SQL Server 2012 SP1。几周前创建的数据库。没有复制,没有镜像,没有日志传送,而且从来没有过这些。

我们确实备份了数据库并恢复到另一个实例,它显示SIMPLENOTHINGlog_reuse_wait另一个实例中。但我不认为还原到另一个实例是重现问题的好方法,因为还原操作会前滚/回滚事务。

sql-server sql-server-2012 transaction-log recovery-model

11
推荐指数
1
解决办法
3004
查看次数

SQL Server 内部内存压力

我正在尝试确定内部内存压力的原因。据我所知,Resource Monitor Ring Buffer 返回一个内部压力指标。例如,通过使用此查询,

SELECT Top (1) *
FROM sys.dm_os_ring_buffers
WHERE ring_buffer_type = 'RING_BUFFER_RESOURCE_MONITOR'
Run Code Online (Sandbox Code Playgroud)

XML 结果(在资源监视器标记内):

<ResourceMonitor>
  <Notification>RESOURCE_MEMPHYSICAL_LOW</Notification>
  <IndicatorsProcess>2</IndicatorsProcess>
  <IndicatorsSystem>0</IndicatorsSystem>
  <NodeId>0</NodeId>
  <Effect type="APPLY_LOWPM" state="EFFECT_OFF" reversed="0">0</Effect>
  <Effect type="APPLY_HIGHPM" state="EFFECT_IGNORE" reversed="0">100789</Effect>
  <Effect type="REVERT_HIGHPM" state="EFFECT_OFF" reversed="0">0</Effect>
</ResourceMonitor>
Run Code Online (Sandbox Code Playgroud)

在Bob Dorr 的这篇文章中,来自 Memory Broker 的收缩信号可能会造成内部内存压力并反映在资源监视器通知中,IndicatorsProcess = 2 (IDX_MEMPHYSICAL_LOW)如上所示。

Slava Oks 的这篇文章展示了另一种使用RING_BUFFER_SINGLE_PAGE_ALLOCATOR. 我对这个特定的环形缓冲区了解不多,因为我从未在我的环境中见过它。

SELECT Top (1) *
FROM sys.dm_os_ring_buffers
WHERE ring_buffer_type = 'RING_BUFFER_SINGLE_PAGE_ALLOCATOR'
Run Code Online (Sandbox Code Playgroud)

这次的 XML 结果:

<Pressure status="0"><AllocatedPages>477</AllocatedPages>
  <AllAllocatedPages>477</AllAllocatedPages>
  <TargetPages>31553</TargetPages>
  <AjustedTargetPages>31553</AjustedTargetPages>
  ...
</Pressure>
Run Code Online (Sandbox Code Playgroud)

我的问题是,哪些内部进程可能会导致内部物理内存压力,从而导致此问题indicator = 2 …

sql-server memory database-internals

6
推荐指数
1
解决办法
1733
查看次数

创建/更新统计信息对事务日志有影响吗?

假设在一个大表上创建或更新统计信息是否会产生显着(或根本没有)的事务日志流失?我认为不会,因为它不会改变底层数据或结构。

如果是这样,什么是验证的好方法?

sql-server statistics transaction-log

6
推荐指数
1
解决办法
2830
查看次数