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

事务并发-封锁协议

事务并发

数据库里面操作的是事务。

事务特性:

  1. 原子性:要么全做,要么不做。
  2. 一致性:事务发生后数据是一致的。
  3. 隔离性:任一事务的更新操作直到其成功提交的整个过程对其他事务都是不可见的不同事务之间是隔离的,互不干涉的。
  4. 持续性:事务操作的结果是持续性的。

并发控制存在的问题:

  1. 丢失更新:两事务对同一数据更新时可能会覆盖,有问题。
  2. 不可重复读:事务1修改数据,事务2也修改,最终验算不正确。
  3. 读脏数据:出现rollback回滚操作时,另一个事务可能还是读取的之前的数据。

封锁协议

通过加锁来解决并发的问题。

X锁是排它锁(写锁),写操作之前加。其他事务不能再加任何形式的锁了。

S锁是共享锁(读锁),读操作之前加。其他 事务只能在对数据A加S锁

 

 

习题

 

解答:

1、隔离性就是其他事务不可见

2、D、C。共享锁还能再加其他锁,排他锁就说明锁都不能加了。

 

http://www.dtcms.com/a/290403.html

相关文章:

  • Linux网络信息(含ssh服务和rsync)
  • 工业上位机开发选型:WinForms稳、WPF炫、Avalonia跨平台
  • 今日Github热门仓库推荐 第七期
  • 一.AD域与DFS集群-AD域安装
  • LP-MSPM0G3507学习--09定时器之四输出PWM
  • 3x3矩阵教程
  • 数据结构堆的实现(C语言)
  • 如果通过源码技术实现矩阵系统分部门管理?
  • cocos中实现3d人物角色头顶信息跟随功能,UI跟随3D/2D对象移动,例如昵称血条跟随人物移动
  • 开启PHP编程之旅:从基础语法到项目实践
  • QT6 源,七章对话框与多窗体(6) 颜色对话框 QColorDialog :本类的属性,信号函数,静态成员函数,以及源代码
  • 什么是GNN?——聚合、更新与循环
  • 时间管理的视觉艺术 《时间格子计算器》H5案例赏析
  • 图立得-html纯前端图片拾色器V202507
  • js迭代器
  • 【前端状态更新与异步协调完全指南:React、Vue架构原理与复杂业务场景实战】
  • React-useEffect的闭包陷阱(stale closure)
  • MySQL的在线模式学习笔记
  • HarmonyOS之UIAbility简介
  • redis 如何优雅地进行键设计?
  • 【Spark征服之路-3.6-Spark-SQL核心编程(五)】
  • Spring @RequestBody注解详解与实践
  • oracle 数据库中,将几张表的数据按指定日期范围实时同步至同一个数据库的备份表中。
  • Oracle 数据库共享池与大池调优指南
  • 深度学习 -- 梯度计算及上下文控制
  • HTTP性能优化实战技术详解(2025)
  • day058-docker常见面试题与初识zabbix
  • SpringDoc 基本使用指南
  • 三维空间中的向量与坐标系变换:数学原理与C++实现
  • 安装pytorch(cpu版)