mysql 存储引擎 innodb 学习复习 之 事务(未完明天继续)
1. 事务也是数据库系统区别于文件系统的重要特性之一,在文件系统中,如果正在写文件,突然OS崩溃了,这是这个文件很有可能被破坏了(也有新的文件系统保证恢复,不被破坏)。
事务的目的:将数据库从一个状态转移到另外一个状态。事务用来保证数据库的完整性
2. 事务的4个特性: 原子,一致,隔离,持久
3. 事务的实现
原子,一致,持久都是通过数据库的redo和undo实现的
4. redo,在innodb中,事务通过重做日志文件和innodb存储引擎的日志缓存来实现,当开始一个事务时,会记录这个事务的LSN(log sequence number,日志序列号),当事务执行时,会往innodb存储引擎的日志缓存中插入事务日志,当事务提交时,必须将innodb存储引擎的日志缓冲写入磁盘,也就是说在写数据之前,必须先写日志,这称之为写日志方式(WAL,write ahead logging)
一个不会敲代码的程序员
分类:
sql
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· .NET周刊【3月第1期 2025-03-02】
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· [AI/GPT/综述] AI Agent的设计模式综述