在MySQL环境中执行insert into select操作时,可能会导致表锁住,影响正常使用。这种现象在Oracle中是不常见的。为了验证这一问题,我们将通过在MySQL 5.7中执行特定的查询来观察实际结果。假设我们有两张表test_1和test_2,其中test_1包含五条记录。我们先通过展示innodb status命令来查看锁信息,通常显示...
然而,可重复读隔离级别下仍然存在幻读问题。例如,事务 A 查询并更新了由事务 B 插入的记录,或者事务 A 在查询后,其他事务插入了记录,导致 A 两次查询结果不一致的情况,都属于幻读现象。为避免这种情况,InnoDB 引入了间隙锁机制。间隙锁在表中某范围的间隙进行锁定,其他事务无法插入锁定范围内的...