事务
1:什么是事务
事务的简介:
事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。
事务的操作
1、查看,设置事务的提交方式;
方式一
select @@autocommit; //当前事务提交方式(1:表示自动提交)
set @@autocommit=0; //设置为手动提交
方式二
start transaction
2、提交事务
commit;
3、回滚事务
rollback;
事务四大特征
事务应该具有4个属性:ACID原则
- 原子性
- 一致性
- 隔离性
- 持久性
这四个属性通常称为ACID特性。
原子性(atomicity)。
要么成功,要么失败!!
一致性(consistency)。
事务必须是使数据库从一个一致性状态变到另一个一致性状态。一致性与原子性是密切相关的。
隔离性(isolation)。
一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。
持久性(durability)。
持久性也称永久性(permanence),指一个事务一旦提交,它对数据库中数据的改变就应该是永久性的。接下来的其他操作或故障不应该对其有任何影响。
并发事务问题
主要理解并发情况下
事务的隔离级别
https://www.bilibili.com/video/BV1Kr4y1i7ru?p=55
-- 查看事务的隔离级别
select @@transaction_isolation
-- 设置事务的隔离级别
set [session|global] transaction isolation level {read uncommitted|read committed|repeatanle read|serializable}
注意:事务的隔离级别越高,数据越安全,但性能越低。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/71904.html