`
bugyun
  • 浏览: 568007 次
社区版块
存档分类
最新评论

mysql 锁和各锁级别

 
阅读更多

 

共享锁(行级别:查)

共享锁的代号是S,是Share的缩写,共享锁的锁粒度是行或者元组(多个行)。一个事务获取了共享锁之后,可以对锁定范围内的数据执行读操作。 

 

排它锁(行级别:增删改)

排它锁的代号是X,是eXclusive的缩写,排它锁的粒度与共享锁相同,也是行或者元组。一个事务获取了排它锁之后,可以对锁定范围内的数据执行写操作。

 

意向锁(表级别)

意向锁是一种表锁,锁定的粒度是整张表,分为意向共享锁(IS)和意向排它锁(IX)两类。意向共享锁表示一个事务有意对数据上共享锁或者排它锁。

 

MySQL有三种锁的级别:页级、表级、行级

InnoDB存储引擎既支持行级锁(row-level locking),也支持表级锁,但默认情况下是采用行级锁。

 

MySQL这3种锁的特性可大致归纳如下:

表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。

行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。

页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。

 

 

分享到:
评论

相关推荐

    mysql front 5.1 注册码 .txt

    5. **安全性和权限管理**:允许管理员设置不同级别的访问权限,确保数据安全。 6. **备份与恢复**:支持数据库的备份和恢复操作,确保数据的安全性。 7. **多语言支持**:支持多种语言环境,满足全球用户的使用需求...

    Java程序员必备:深入理解并发编程与核心面试问题

    涵盖AQS(AbstractQueuedSynchronizer)、分布式事务、锁机制(包括ReentrantLock)、并发编程基础知识(如CAS、线程池设计)、JVM特性及调优(如内存回收、对象引用)、数据库索引与事务(如B+树索引和Mysql事务...

    最全的BAT面试题目整理

    - 掌握SQL语言,能够编写复杂的SQL查询语句,理解事务隔离级别和锁机制。 - 理解数据库的索引原理,知道如何优化数据库查询性能。 5. 网络知识: - 掌握计算机网络基础,理解TCP/IP协议栈、HTTP/HTTPS协议、DNS...

    Java工程师技能图谱.pdf

    7. 数据库技术:需要深入理解MySQL数据库,包括索引设计、锁事务、并发级别、死锁、执行计划、慢SQL统计参数优化、索引选择、连接优化、聚合查询优化、Union优化、子查询优化、条件优化、SQL查询优化、主键生成与...

    Java高级架构必备知识点

    改进版的2PC协议,增加了预提交阶段,减少了锁的等待时间,提高了系统的吞吐量。 **3.3 消息中间件(最终一致性)** 通过消息中间件实现最终一致性,如使用RocketMQ来保证消息的可靠传递和消费。 #### 四、队列 **...

    datenbankenLab

    9. **并发与多线程**:在多用户环境中,理解并发控制和锁机制,比如Java的`synchronized`关键字和`ReentrantLock`,以及数据库的事务隔离级别。 10. **数据库安全**:学习如何保护数据库免受攻击,如SQL注入,以及...

Global site tag (gtag.js) - Google Analytics