什么是事务:简单来说,事务就是要保证一组数据库操作,要么全部成功,要么全部失败。
事务支持是在引擎层实现的。
mysql原生的MyISAM引擎不支持事务。
事务——原子性、一致性、隔离性、持久性
隔离级别:
读未提交:一个事务还没有提交,它做的变更能被别的事务看到。
读提交:一个事务提交之后,它做的变更才会被其他事物看到。
可重复读:一个事务执行过程中看到的数据,总是跟这个事务启动时看到的数据一致。未提交变更对其他事务也是不可见的。
串行化:对同一行记录,写会加写锁,读会加读锁。当出现读写锁冲突的时候,后访问的事务必须等前一个事务执行完成,才能继续执行。
可重复读场景:数据校对