数据库除了对查询等操作进行了抽象,另外一个重要的功能就是事务了。为什么需要事务呢?因为我们在操作数据的时候,可能遇到多个线程同时操作数据的问题,也可能遇到突然数据库故障了的问题,这些都可能造成数据的不一致。所以事务要保证的就是一致性。
事务是数据库的核心概念之一,提供ACID (原子性、一致性、隔离性、持久性)特性的事务处理,是数据库系统能够商用化,并用来支持金融级业务的核心技术之一。
事务管理和并发控制是提供这一支持的核心技术,是大型数据库有别于某些表格管理软件的关键特性之一, 也是实现一个大型数据库管理系统时会面临的最有挑战性的技术之一。
总而言之,言而总之,一张图就可以概览事务的相关知识:
那事务还有哪些具体的操作呢,给大家分享一份腾讯T4编写的PDF:《数据库事务处理的艺术事务管理与并发控制》
第一篇(第1章和第2章)事务管理与并发控制基础理论
第1章数据库管理系统的事务原理
第2章深入理解事务管理和并发控制技术
第二篇(第3~6章)事务管理与并发控制应用实例研究第3章Informix事务管理与并发控制
第4章PostgreSQL事务管理 与并发控制
第5章InnoDB事务管理与并发控制
第6章Oracle事务管理 与并发控制
第三篇(第7~9章) PostgreSQL事务管理 与并发控制源码分析
第7章PostgreSQL事务系统的实现
第8章PostgreSQL并发控制系统的实现一封锁
第9章PostgreSQL并发控制系统的实现一MVCC
第四篇(第10~ 12章) InnoDB事务管理与并发控制源码分析
第10章InnoDB事务 系统的实现
第11章InnoDB并发控制系统的实现一 两阶段锁
第12章InnoDB并发控制系统的实现一 MVCC