全部学科
Python全栈
python
NodeJS全栈
nodejs
小程序首页

MySQL事务与锁专题测试

20 题 40 分钟 难度:

考察知识点

本试卷涵盖以下核心知识点:

事务隔离级别(7题)

  • 四种隔离级别的特点与区别
  • 脏读、不可重复读、幻读的概念
  • 隔离级别解决的问题对照
  • MySQL默认隔离级别

事务ACID特性(4题)

  • 原子性、一致性、隔离性、持久性的含义
  • ACID特性的实现机制
  • InnoDB对ACID的支持

锁的分类与机制(4题)

  • 锁粒度分类(表锁、行锁、页锁)
  • 共享锁与排他锁的区别
  • 意向锁的作用
  • Record Lock、Gap Lock、Next-Key Lock

MVCC多版本并发控制(4题)

  • MVCC的基本概念与作用
  • MVCC的实现基础(Undo Log)
  • MVCC隐藏字段(DB_TRX_ID、DB_ROLL_PTR)
  • Read View工作机制

死锁与优化(2题)

  • 死锁检测机制
  • 预防死锁的方法
1
单选题

事务隔离级别的作用是什么?

A

设置数据库密码

B

控制多个事务并发执行时相互隔离的程度,解决数据一致性问题

C

设置查询速度

D

设置存储空间

2
单选题

什么是脏读?

A

读取了正确的数据

B

读取了其他事务未提交的数据

C

读取了旧数据

D

读取了重复数据

3
单选题

什么是不可重复读?

A

数据可以重复读取

B

同一事务内两次读取同一数据结果不同(被其他事务修改并提交)

C

读取不到数据

D

数据被删除

4
判断题

MySQL InnoDB的默认事务隔离级别是REPEATABLE READ(可重复读)。

A

B

5
单选题

MySQL支持的四种事务隔离级别,按隔离程度从低到高排列是?

A

SERIALIZABLE > REPEATABLE READ > READ COMMITTED > READ UNCOMMITTED

B

READ UNCOMMITTED < READ COMMITTED < REPEATABLE READ < SERIALIZABLE

C

READ COMMITTED > REPEATABLE READ > SERIALIZABLE > READ UNCOMMITTED

D

所有级别隔离程度相同

6
多选题

关于事务隔离级别解决的并发问题,哪些是正确的?

A

READ UNCOMMITTED允许脏读、不可重复读、幻读

B

READ COMMITTED解决脏读,允许不可重复读、幻读

C

REPEATABLE READ解决脏读和不可重复读

D

SERIALIZABLE解决所有并发问题

E

隔离级别越高并发性能越低

7
填空题

事务隔离级别从低到高:________________允许脏读,______________解决脏读,_______________解决脏读和不可重复读(MySQL默认),____________解决所有问题但性能最低。

8
单选题

事务的ACID特性指的是什么?

A

原子性、一致性、隔离性、持久性

B

自动性、并发性、独立性、安全性

C

准确性、完整性、独立性、可靠性

D

访问性、缓存性、索引性、数据性

9
判断题

InnoDB通过Undo Log实现原子性,通过Redo Log实现持久性,通过锁机制和MVCC实现隔离性。

A

B

10
多选题

关于事务ACID特性的描述,哪些是正确的?

A

原子性保证事务要么全部成功要么全部失败

B

一致性保证事务前后数据库状态符合约束规则

C

隔离性保证并发事务相互不干扰

D

持久性保证提交后的数据即使故障也不会丢失

E

InnoDB完整支持ACID四个特性

11
填空题

事务ACID特性:______保证事务不可分割,______保证数据状态合规,______防止并发干扰,______确保提交数据不丢失。

12
单选题

MySQL的锁按照粒度可以分为哪几种?

A

只有一种锁

B

表级锁、行级锁、页级锁

C

读锁、写锁

D

自动锁、手动锁

13
单选题

按照类型分类,MySQL的锁主要有哪些?

A

大锁和小锁

B

共享锁(S锁)和排他锁(X锁)

C

快锁和慢锁

D

内存锁和磁盘锁

14
单选题

意向锁(Intention Lock)的主要作用是什么?

A

直接锁定数据行

B

提高表锁与行锁兼容性判断效率,表示表中有行被锁定

C

替代行级锁

D

用于死锁检测

15
判断题

Next-Key Lock是Record Lock和Gap Lock的组合,既锁定记录行也锁定前面的间隙,用于防止幻读。

A

B

16
单选题

MVCC(多版本并发控制)的主要作用是什么?

A

创建多个数据库版本

B

通过保存数据的多个版本实现非锁定读,提高并发性能

C

备份数据库

D

复制数据库

17
单选题

InnoDB实现MVCC的基础是什么?

A

只使用锁

B

Undo Log保存数据的历史版本

C

内存缓存

D

网络传输

18
多选题

关于MVCC工作机制的描述,哪些是正确的?

A

MVCC通过Undo Log保存数据的历史版本

B

每行数据有DB_TRX_ID和DB_ROLL_PTR隐藏字段

C

Read View记录活跃事务列表用于判断版本可见性

D

READ COMMITTED每次查询创建新Read View

E

REPEATABLE READ只在事务开始时创建一次Read View

19
判断题

innodb_deadlock_detect参数默认开启,InnoDB会自动检测死锁并回滚其中一个事务。

A

B

20
单选题

预防死锁的常用方法是什么?

A

不使用事务

B

按固定顺序访问资源,避免形成循环等待

C

增加锁等待时间

D

使用更大的锁

← 上一个试卷 MySQL中级技能认证
下一个试卷 → MySQL初级技能认证

📝 发现内容有误?点击此处直接编辑

想参加完整模拟考试?
小程序提供计时考试、自动评分和详细解析

长按或扫描二维码,立即体验

扫码体验小程序
马上就来
使用微信扫描二维码
立即体验完整题库