.db-wal文件
wal意思是write-ahead log,顾名思义就是保存的一个日志,对于提交/回滚目的很有用。 sqlite 3.7之后开始提供这个功能,当一个数据库采用WAL模式,所有连接数据的操作都必须使用WAL,然后在在数据库文件夹下生成一个后缀为.db-wal的文件保存操作日志。该日志使SQLite可以在事务失败时回滚更改。 SQLite如何使用它们以及为什么将它们保留这么长时间取决于SQLite的作者。如果数据库未在运行,则删除该文件是完全可以的,实际上,如果存在该文件,它将在重新启动数据库时自动删除(因为它仅在数据库正在主动写入/提交数据时才有用)。
.db-shm 文件
.db-shm 文件是共享内存文件,仅当SQLite以WAL(预写日志)模式运行时才存在。 这是因为在WAL模式下,共享同一个db文件的数据库连接必须全部更新同一存储位置(用作WAL文件的索引),以防止发生冲突。
参考资料:sqlite官网:https://www.sqlite.org/fileformat2.html
本文介绍了SQLite中.db-wal文件的作用,它是写前日志用于事务管理,同时涉及.db-shm文件作为共享内存在WAL模式下的作用。了解这两种文件有助于掌握数据库事务的持久性和一致性保障。
3258

被折叠的 条评论
为什么被折叠?



