当前位置: 首页 > news >正文

数据库锁-及事务隔离级别对应

image

 引用:https://mbd.baidu.com/newspage/data/dtlandingsuper?nid=dt_5200837128726562540&sourceFrom=search_b

 

1. 乐观锁
- 定义:乐观锁假设大多数情况下不会有冲突,因此在操作时不加锁,而是在提交数据时检测冲突,若有冲突则重试。
- 作用:通过减少锁的使用,提高并发性能。
- 应用场景:读取多、写入少的场景,如数据初始化或批量导入等。
- 示例:使用版本号控制,在更新时检查版本号是否一致,若不一致则说明有冲突。

2. 悲观锁
- 定义:悲观锁认为每次操作都会发生冲突,因此在操作前先加锁,阻止其他线程访问。
- 作用:通过锁定资源,确保资源独占性,避免并发修改。
- 应用场景:高并发环境中,频繁修改数据的场景,如订单生成、支付等。
- 示例:数据库事务中的 SELECT ... FOR UPDATE 语句就会使用悲观锁。

3. 共享锁/读锁
- 定义:共享锁允多个事务同时读取一个资源,但不允许修改。
- 作用:防止并发修改,允许多个读操作同时进行,提高并发读取性能。
- 应用场景:多个用户查询同一数据时,无需互相阻塞。
- 示例:SQL查询操作 SELECT 一般会使用共享锁。

4. 互斥锁/写锁/排它锁/独占锁
- 定义:互斥锁只允许一个线程访问资源,其他线程在锁释放前无法访问该资源。
- 作用:防止多个线程同时修改资源,保证数据一致性。
- 应用场景:写操作,避免多个线程同时写入造成的数据不一致。
- 示例:数据库更新操作 UPDATE 或 DELETE 通常会使用互斥锁。

5. 行锁定与表锁定
- 行锁定:数据库级别的锁,锁定单行记录,避免多个事务同时修改同一行数据。
- 作用:减少锁的范围,提高并发访问能力。
- 应用场景:数据库系统中多用户同时访问同一表但不同数据行时。
- 示例:MySQL 的 InnoDB 引擎支持行锁。
- 表锁定:锁定整个表,阻止其他线程对表的读写操作。
- 作用:保证整个表的数据一致性,但会降低并发性能。
- 应用场景:当需要对表进行大规模修改或删除时,如重建表索引等操作。
- 示例:MySQL 的 MyISAM 存储引擎默认使用表锁。

 

6. 事务的隔离级别与数据库锁的对应关系

读未提交(Read Uncommitted)

通过共享锁(S锁)实现,允许事务读取数据时加锁,但允许其他事务继续读写同一数据。此隔离级别下,事务可能读取到其他未提交的事务数据,导致脏读风险。 [1MySQL默认隔离级别为读已提交。 ‌12

读已提交(Read Committed)

多数数据库默认隔离级别,通过排他锁(X锁)实现。每次读取数据时加锁,但仅阻止其他事务修改当前数据,允许其他事务读取。此级别避免脏读,但可能出现不可重复读。 ‌12

可重复读(Repeatable Read)

MySQL默认隔离级别,通过行锁(X锁)实现。事务开始时锁定所有涉及数据行的排他锁,防止其他事务修改或删除数据。此级别避免不可重复读,但可能发生幻读。 ‌12

序列化(Serializable)

最高隔离级别,通过行锁(X锁)实现。锁定涉及数据行的排他锁,并要求其他事务等待锁释放。此级别完全避免幻读,但可能导致长时间锁定资源。 ‌12

不同数据库系统可能通过不同组合的锁机制实现相同隔离级别,例如Oracle通过多版本并发控制(MVCC)而非传统锁机制实现可重复读

 

http://www.jsqmd.com/news/20515/

相关文章:

  • 权威调研榜单:落地立式护眼灯厂家TOP3榜单好评深度解析
  • 详细介绍:C++面向对象编程——引用
  • 2025管道电预热/热力管道电预热设备厂家推荐新疆泓浩机电,专业高效施工保障
  • 2025年10月国内仪器类检测厂家全景解析报告,基于专业测评的技术、性能及市场优势深度分析
  • 2025二手发电机回收/买卖厂家推荐新疆泓浩机电,专业高效值得信赖
  • 2025发电机/发电机组出租厂家推荐新疆泓浩机电,专业维修保养服务
  • 本地部署低代码构建平台 Langflow 并实现外部访问
  • 2025 年旋转木马生产厂家最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析
  • 2025 年电动门实力厂家最新推荐排行榜:聚焦智能创新与多场景适配,精选优质品牌助力选购电动悬浮门/电动大门/电动平移门/小区电动门公司推荐
  • 2025年10月全息投影沙盘生产厂家全景解析报告,基于专业测评的技术、性能及市场优势深度分析
  • 进制基础及位运算
  • 2025年10月国内平开门厂家全景解析报告,基于专业测评的技术、性能及市场优势深度分析
  • 2025 年道闸源头厂家最新推荐排行榜:聚焦专利技术与多场景适配的权威优选指南直杆/ 栅栏道闸/道闸停车场系统/道闸识别一体机/道闸系统公司推荐
  • 2025 年最新冷水机厂家推荐榜:覆盖风冷式 / 水冷式 / 螺杆式等多类型,为企业精选高性价比控温设备
  • 为什么要学习PostgreSQL?新手怎么从入门到精通
  • 编译Duckdb机器学习插件QuackML - 详解
  • 数字音频作曲软件-钢琴窗-网格数量计算公式
  • 基于梯度下降、随机梯度下降和牛顿法的逻辑回归MATLAB实现
  • 2025年海外仓企业最新推荐榜,英国海外仓/法国海外仓/西班牙海外仓/意大利海外仓/波兰海外仓/聚焦企业服务品质与平台适配力深度剖析
  • 精控DRC,成就高质量IC设计精品
  • 完整教程:【uniapp】uniapp+uview-ui+mixins实现搜索+上拉加载+加载动画功能:
  • 攻壳机动队 动画电影12部合集
  • 2025 年天津老味儿刨冰最新推荐榜:精选 5 家世代传承与新兴热门品牌,附品质选择指南
  • 详细介绍:OpenLayers地图交互 -- 章节十四:拖拽缩放交互详解
  • 2025 年断路器厂家最新推荐排行榜权威发布!涵盖远程控制 / 物联网 / 漏电 / 无线遥控 / 远程监控类型,优质品牌助采购精准决策
  • js函数声明和函数表达式的理解
  • 2025 天津电竞网吧最新推荐榜单权威发布:Z 世代电竞领衔五大实力品牌,技术与口碑深度解析!
  • 合成孔径雷达(SAR)成像仿真
  • 2025 年最新推荐智能门锁厂家榜单:涵盖高端 / 猫眼 / 家用 / 人脸 / 续航 / 掌静脉等多类型,帮消费者避开劣质产品选到靠谱品牌
  • 动车受电弓网检测系统 保障高速铁路安全高效运行