mysql 存储引擎 innodb 学习复习 之 事务(未完明天继续)
1. 事务也是数据库系统区别于文件系统的重要特性之一,在文件系统中,如果正在写文件,突然OS崩溃了,这是这个文件很有可能被破坏了(也有新的文件系统保证恢复,不被破坏)。
事务的目的:将数据库从一个状态转移到另外一个状态。事务用来保证数据库的完整性
2. 事务的4个特性: 原子,一致,隔离,持久
3. 事务的实现
原子,一致,持久都是通过数据库的redo和undo实现的
4. redo,在innodb中,事务通过重做日志文件和innodb存储引擎的日志缓存来实现,当开始一个事务时,会记录这个事务的LSN(log sequence number,日志序列号),当事务执行时,会往innodb存储引擎的日志缓存中插入事务日志,当事务提交时,必须将innodb存储引擎的日志缓冲写入磁盘,也就是说在写数据之前,必须先写日志,这称之为写日志方式(WAL,write ahead logging)
一个不会敲代码的程序员
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步