mysql 当前读之后还可以快照读吗
是的,MySQL支持当前读(也称为一致性读)和快照读(也称为不可重复读)。
当前读是指在读取数据时,读取的是最新的数据,即读取数据时会加锁,其他事务无法修改该数据,保证读取的数据是最新的。当前读可以通过使用SELECT ... FOR UPDATE或SELECT ... LOCK IN SHARE MODE来实现。
快照读是指在读取数据时,读取的是事务开始时的数据快照,即读取数据时不会加锁,其他事务可以修改该数据,但读取的数据是一致的。快照读可以通过设置事务的隔离级别为Read Committed或Repeatable Read来实现。
需要注意的是,在使用快照读时,如果其他事务修改了被读取的数据,那么后续的快照读可能会读取到不同的数据,也就是出现了不可重复读的情况。如果需要避免不可重复读,可以使用当前读来保证读取的数据是一致的。
原文地址: http://www.cveoy.top/t/topic/iogf 著作权归作者所有。请勿转载和采集!