mysql事务

事务的四个特征acid
原子性(atomicity)
事务必须是一个原子的操作序列单元。事务中包含的各项操作在一次执行过程中,只允许出现两种状态之一,要么都成功,要么都失败
一致性(consistency)
事务应该与mysql的约束或者与我们业务的约束保持一致性
隔离性(isolation)
在并发环境中,并发的事务是互相隔离的,一个事务的执行不能被其它事务干扰,不同的事务并发操作相同的数据时,每个事务都有各自完整的数据空间
持久性(duration),
事务的持久性是指事务一旦提交后,数据库中的数据必须被永久的保存下来。即使服务器系统崩溃或服务器宕机等故障。只要数据库重新启动,那么一定能够将其恢复到事务成功结束后的状态

事务四个隔离级别
读未提交(read uncommitted): 一个事务还没有提交时,它做的变更就能被别的事务看到。
读提交(read committed): 一个事物提交之后,它做的变更才会被其他事务看到。
可重复读(repeatable read): 事务A读取X数据后,当事务B对该X更改且提交后,事务A读取的X还是修改之前的X
串行化(serializable): 对于同一行记录,写会加“写锁”,读会加“读锁”,当出现锁冲突时,后访问的事务需要等前一个事务执行完成,才能继续执行。

脏读: 一个事务读到另一个事务未提交的更新数据。
不可重复读: 事务A读取X数据后,当事务B对该X更改且提交后,事务A读取的X是发生修改后的X,导致两次读取的X不一致
幻读: 事务A一开始读取到了1条数据,当事务B插入1条新数据后,事务A再次读取,发现数据变成了2条,比原先多出来了1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值