网站首页 > 技术文章 正文
小编注:常规问题,几乎必问,理解不了建议背过。
事务的4个特性是指ACID:
原子性(Atomic):一个事务中的所有操作,要不全部完成,要不全部都没完成,不会结束在某个中间环节。事务执行过程中发生错误会回滚。
一致性(Consistency):事务执行前后,数据库的完整性没有被破环。原有的约束和触发器等均保持。
隔离性(Isolation):数据库允许多个事务并发读写。隔离性通过不同的级别,可以保证数据的一致性。分为:读未提交(read uncommited)、读提交(read commited)、可重复读(repetable read)和串行化(serializable)
持久性(Durability):事务处理结束后,即使系统故障也能保证数据的修改是永久的。
小编注:其中除了隔离性,其他三点都很好理解。面试一般问的重点,就是隔离性。
实际生产中,由于事务的并发执行的,所以会存在3类问题:
1. 脏读:事务A读取了事务B更新的数据,然后事务B回滚了,事务A读到的这个数据就称为脏数据
2. 不可重复读:事务A多次读取事务B的数据,但是事务B更新并提交了多次,导致事务A多次读取的数据不一致
3. 幻读:事务A选择了某个条件的多行记录,并进行了操作。此时事务B又额外插入了一行符合事务A这个条件的记录,结果事务A操作完成之后,发现了B的插入数据没有操作,就好似发生了幻觉一样。
其中不可重复度和幻读有些类似。
重点在于:不可重复读侧重于现有数据的修改,而幻读侧重于增删数据。
最后:mysql和oracle的默认事务隔离级别你知道吗?
- Mysql: repeatable read 可重复度
- Oracle: read commited 读已提交
猜你喜欢
- 2025-07-14 一次性把微服务数据架构事务管理+ACID+一致性+CAP+BASE理论讲清
- 2025-07-14 面试官:来,讲讲Spring事务有哪些坑?
- 2025-07-14 oracle是什么软件?(oracle是什么软件可以卸载吗)
- 2025-07-14 MySQL事务详解(mysql事务用法)
- 2025-07-14 Spring 事务管理详情介绍(spring事务管理方式有几种)
- 2025-07-14 事务的隔离级别?(spring事务的隔离级别)
- 2025-07-14 什么是 SQL 事务,如何创建 SQL 事务
- 2025-07-14 深入理解数据库事务(简述数据库事务的基本概念)
- 2024-10-21 【干货】Oracle 9i、10g、11g版本的区别
- 2024-10-21 「一文搞懂」MySQL事务实现原理 mysql事务的概念
你 发表评论:
欢迎- 607℃几个Oracle空值处理函数 oracle处理null值的函数
- 600℃Oracle分析函数之Lag和Lead()使用
- 587℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 584℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 580℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 572℃【数据统计分析】详解Oracle分组函数之CUBE
- 561℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 552℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)