Mysql解决脏读、不可重复读、幻读这些并发事务问题有那些方法?

48 阅读1分钟

解决脏读、不可重复读、幻读这些并发事务问题有两种方法

第一种是 读使用MVCC,写就加锁

第二种是 读写都加锁

除非代码里给读加锁select... for update或for share,一般在常用的两个隔离级别中RC和RR读都是使用MVCC。

因为采用MVCC来解决读-写问题操作并发执行问题,读写操作彼此并不冲突,性能更高。

但是业务在某些特殊情况下,要求必须使用加锁的方式。例如查询账户余额用于转账等等,必须采用加锁的方式执行。