Mkdir700's Note

Mkdir700's Note

数据库

SQLite 锁机制:读锁策略与并发事务分析

本文深入探讨了SQLite数据库的锁机制,特别关注了读操作的锁获取策略。在SQLite中,不同上下文下的读操作锁获取策略有所变化,包括事务外的读操作、显式事务内的读操作以及不同隔离级别的影响。通过实验验证了事务A在执行UPDATE操作时不被阻塞,但在尝试COMMIT时失败,并指出了关键点:UPDATE操作在内存中记录更改,只有在COMMIT阶段才会尝试获取EXCLUSIVE锁,如果其他事务持有SHARED锁,COMMIT将被阻塞直到超时。总结了SQLite的锁升级是延迟的特点,写操作的内存更改和实际文件写入是分离的,事务的COMMIT阶段是最关键的锁竞争点,这种设计既保证了数据一致性,又提供了较好的并发性能。
258
0
3
2024-12-26
MySQL单表访问方法
了解InnoDB存储引擎的表空间

了解InnoDB存储引擎的表空间

对于每个独立表空间来说,对应着文件系统中一个名为表名.ibd的实际文件。可以把表空间想象成切分为许许多多个页的池子。当我们想为某个表插入一个条记录的时