共享锁:如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排他锁。获准共享锁的事务只能读数据,不能修改数据。
排他锁:如果事务T对数据A加上排他锁后,则其他事务不能再对A加任任何类型的封锁。获准排他锁的事务既能读数据,又能修改数据。
简要说明为什么会发生死锁?解决死锁的主要方法是什么?
若干事务相互等待释放封锁,就陷入无限期等待状态,系统就进入死锁
解决死锁的方法应从预防和解除的两个方面着手:
(1)死锁的预防方法:①要求每一个事务必须一次封锁所要使用的全部数据(要么全成功,要么全不成功)②规定封锁数据的顺序,所有事务必须按这个顺序实行封锁。
(2)允许死锁发生,然后解除它,如果发现死锁,则将其中一个代价较小的事物撤消
,回滚这个事务,并释放此事务持有的封锁,使其他事务继续运行。

共享锁是表级的,排它锁可以是行级的也可以是表级的。

数据库共享锁与排它锁相关推荐

  1. 聊一聊数据库中的锁分类(乐观锁、悲观锁、共享锁、排它锁、表级锁、行级锁、页面锁)...

    乐观锁和悲观锁(从策略上划分) 乐观锁:乐观锁就如同他的名字一样,非常了乐观,每次去读数据都认为其它事务没有在写数据,总是认为别人不会修改数据,所以就不上锁,只有在线程提交数据时会通过检查版本号的形式 ...

  2. MySQL/InnoDB中,乐观锁、悲观锁、共享锁、排它锁、行锁、表锁、死锁概念的理解

    MySQL/InnoDB的加锁,一直是一个面试中常问的话题.例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何排查并解决?我在工作过程中,也会经常用到,乐观锁,排它锁,等.于是今天就对 ...

  3. C# 乐观锁、悲观锁、共享锁、排它锁、互斥锁

    悲观锁(Pessimistic Lock), 顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁.传统的关系型数据 ...

  4. Oracle 共享锁和排它锁、 DML和DDL锁、 for update 锁表的问题

    共享锁和排它锁 oracle有两种模式的锁:排他锁(exclusive lock,即X锁)和共享锁(share lock,即S锁). 共享锁:如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享 ...

  5. innodb 悲观锁 乐观锁_mysql乐观锁、悲观锁、共享锁、排它锁、行锁、表锁

    mysql乐观锁.悲观锁.共享锁.排它锁.行锁.表锁 乐观锁 总是假设最好的情况,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,可以使 ...

  6. MySQL/InnoDB中,乐观锁、悲观锁、共享锁、排它锁、行锁、表锁、死锁概念的理解...

    2019独角兽企业重金招聘Python工程师标准>>> MySQL/InnoDB的加锁,一直是一个面试中常问的话题.例如,数据库如果有高并发请求,如何保证数据完整性?产生死锁问题如何 ...

  7. MySQL之共享锁与排它锁

    MySQL之 共享锁&排它锁 MYSQL中锁的实现主要有两种:共享锁和排它锁. 共享锁 :也成为读锁,允许事务读取一行数据 例(官方):也称为读锁,允许事务读取一行数据.例如事务 T 对数据对 ...

  8. 共享锁和排它锁的用法

    共享锁和排它锁 排它锁,又称为独占锁.独享锁 共享锁,又称为读锁,获得共享锁之后,可以查看但无法修改和删除数据,其他线程此时也可以获取到共享锁,也可以查看,但无法修改和删除数据 共享锁和排它锁的典型是 ...

  9. 共享锁和排它锁---C++17 多线程

    共享锁和排它锁-C++17 多线程 读写锁把对共享资源的访问者划分成读者和写者,读者只对共享资源进行读访问,写者则需要对共享资源进行写操作.C++17开始,标准库提供了shared_mutex类(在这 ...

最新文章

  1. js 变量提升 和函数提升
  2. Transformers资料汇总!从原理到应用
  3. 时钟,复位和电源管理
  4. 使用NLog实现一个简单的日志记录(包含源代码)
  5. C++学习之路 | PTA乙级—— 1076 Wifi密码 (15 分)(精简)
  6. 排列公式和组合公式_排列与组合:排列公式与组合公式之间有什么区别?
  7. python不可以安装的软件包_安装好的python包竟然无法import
  8. Casbin访问控制框架入门详解及Java案例示范
  9. PD QC充电器XP06诱骗取电9V 12V 15V 20V原理
  10. m4s格式转换mp3_mp3文件怎么转换格式
  11. 硬件信息查看PHP,如何查看电脑硬件信息|查看电脑硬件信息软件 查看电脑CPU/显卡/内存条/主板型号等配置...
  12. 腾达无线路由器连不上服务器,腾达无线路由器中继失败怎么办?
  13. 解决IntelliJ IDEA Properties中Unused property提示
  14. 网易云音乐推出异乡人年度企划:不同圈层音乐人演绎他乡故事
  15. PoetryGenerator的参数
  16. 【心理咨询师考试笔记】操作技能(四)——心理咨询方法
  17. 新版本微信PC端小程序打不开 一直加载 白屏等问题及解决方案
  18. HM编码器代码阅读(15)——帧间预测之AMVP模式(三)xGetBlkBits函数
  19. 家里宽带使用有线连接网速很快但是使用无线连接网速很慢的解决方法
  20. Shor’s Algorithm 学习笔记

热门文章

  1. java 封装类_java的基本类型和对应的封装类
  2. redis之瘦小精干的位图 (一)
  3. C++中的sort函数排序(快速排序)
  4. @ select 函数使用说明
  5. 详细讲解Java整数类型
  6. 诚信可靠的深圳python_ai人工智能哪家正规诚信经营
  7. 简单排序算法时间空间复杂度分析及应用(7)-希尔排序
  8. cf596B. Wilbur and Array
  9. 怎么通过网络快速赚钱,无非是这4种方式!
  10. 数据库1NF 2NF 3NF范式解释