首页 > IT职业 > IT职场 > mysql并发事务控制的两种情况

1、单版本控制锁。锁以独占的方式确保事务在只有一个版本的情况下相互隔离。
在MySQL事务中,锁的实现与隔离级别有关。在RR(RepeatableRead)隔离级别下,MySQL以牺牲并行度为代价,通过Gap锁防止数据写入,因为并行度不够,冲突多,往往导致死锁。现在流行的Row模式可以避免很多冲突甚至死锁,建议默认使用Row+RC模式的隔离级别,可以大大提高数据库的读写并行度。
2、多版本MVC并发控制隔离机制。
这种隔离是通过MVCC机制来保证的,默认情况下,一行数据的读写两种操作不会通过加锁互斥来保证隔离,避免了频繁的加锁互斥,而在串行化隔离等级中,为了保证较高的隔离,则是通过加锁互斥来实现的。
Mysql在可重复阅读隔离级别下如何保证事务的高隔离性,同样的sql查询句在一个事务中多次执行相同的查询结果,即使其他事务对数据进行修改,也不会影响当前事务sql句的查询结果。
Mysql在阅读提交和可重复阅读隔离级别下实现了MVCC机制。
MVCC机制的实现是通过read-view机制与undo版本链进行比较,使不同的事务能够根据数据版本链的比较规则读取版本链中相同的数据。
以上就是mysql并发事务控制的两种情况,希望对大家有所帮助。更多mysql学习指路:MySQL
推荐操作系统:windows7系统、mysql5.8、DELL G3电脑
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/1331/viewspace-2828743/ ,如需转载,请注明出处,否则将追究法律责任。