版本 - SQL Server 2012 SP1 CU3。
我使用sys.dm_os_volume_stats有一段时间了,它可以正常工作。最近,我无法在一个 SQL Server 2012 实例上从该 DMF 返回任何结果。
例如
SELECT * FROM sys.dm_os_volume_stats(1, 1);
我对其他 SQL Server 2012 或 SQL Server 2008 R2 实例上的相同代码没有任何问题。有谁知道背后的原因并解决了这个问题?
版本 - SQL Server 2012 SP1 CU3。
我使用sys.dm_os_volume_stats有一段时间了,它可以正常工作。最近,我无法在一个 SQL Server 2012 实例上从该 DMF 返回任何结果。
例如
SELECT * FROM sys.dm_os_volume_stats(1, 1);
我对其他 SQL Server 2012 或 SQL Server 2008 R2 实例上的相同代码没有任何问题。有谁知道背后的原因并解决了这个问题?
在我进行自己的调查时,有谁知道为什么SIMPLE
恢复模型中的数据库LOG_BACKUP
适用于log_reuse_wait_desc
?
SQL Server 2012 SP1。几周前创建的数据库。没有复制,没有镜像,没有日志传送,而且从来没有这些。
我们确实备份了数据库并恢复到另一个实例,它显示SIMPLE
在NOTHING
另一个log_reuse_wait
实例上。但我不认为还原到另一个实例是重现问题的好方法,因为还原操作会前滚/回滚事务。
大多数论坛和在线示例总是建议在有人询问快照、行版本控制或类似问题时两者都设置ALLOW_SNAPSHOT_ISOLATION
并设置为 ON。READ_COMMITTED_SNAPSHOT
我猜这两个设置中的 SNAPSHOT 这个词都会有点混乱。我认为,为了让数据库引擎对 READ_COMMITTED 默认行为使用行版本控制而不是锁定,无论设置如何,数据库READ_COMMITTED_SNAPSHOT
都设置为 ON 。ALLOW_SNAPSHOT_ISOLATION
该ALLOW_SNAPSHOT_ISOLATION
设置设置为 ON 仅允许在启动事务时进行快照隔离(例如 SET TRANSACTION ISOLATION LEVEL SNAPSHOT),而不管READ_COMMITTED_SNAPSHOT
设置如何。
将这两个设置设置为 ON 的唯一原因是它需要具有 READ COMMITTED 行版本控制和 快照隔离。
我的问题是,我的理解在某种程度上不正确吗?并且这两个设置必须始终一起设置为 ON(尤其是对于 READ COMMITTED 行版本控制)?