首页 > 代码库 > SQL Server 行版本控制
SQL Server 行版本控制
什么时候开启行版本?
当发现系统中存在大量读写阻塞的时候,就是我们开启行版本的时候了。要点:写写阻塞的场景行版本技术解决不了
开启方式:
-- 设置为单用户ALTER DATABASE MyTest SET SINGLE_USER WITH ROLLBACK IMMEDIATE;GO-- 开启行版本(事务级)ALTER DATABASE MyTest SET ALLOW_SNAPSHOT_ISOLATION ON;GO-- 开启语句级行版本ALTER DATABASE MyTest SET READ_COMMITTED_SNAPSHOT ON WITH no_waitGO-- 设置为多用户ALTER DATABASE MyTest SET MULTI_USER WITH ROLLBACK IMMEDIATE;GO
开启语句级行版本注意点:
如果将 READ_COMMITTED_SNAPSHOT 设置为 ON,则数据库引擎会使用行版本控制为每个语句提供一个在事务上一致的数据快照,缺点是用户读到的虽然不是一个脏数据,但是可能是个正在被修改马上就要过期的数据值。如果根据这个过期的值做数据修改,会产生逻辑错误。
SQL Server 行版本控制
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。