程序员面试宝典之Mysql数据库Innodb引擎的4个隔离级别

程序员面试宝典之Mysql数据库Innodb引擎的4个隔离级别,第1张

题目:请阐述Mysql Innodb引擎的4个隔离级别

难度:三星

面试频率:五星

这道题真的是一道数据库的高频题,数据库题除了索引的原理之外就是这道题的面试频率最高。

1.Read uncommitted(读未提交):,最低的隔离级别,可以一个事务读到其他事务没有提交的数据,也称脏读,这个隔离级别很少人用

2.Read committed(读已提交):相比于读未提交,这个隔离级别只能读到其他事物已经提交了的数据,这个隔离级别用得比较多。但是不是Mysql默认的隔离级别

3.Repeatable read(可重复读): 在读已提交隔离级别中,2次读取同一个变量如果其他事务修改了它的值,会读到的不一样。而在这个隔离级别中,顾名思义,一个事务开始读了。多次读到的值可以保证是一样的

4.Serializable 序列化 在这个隔离级别下,所有的事务都将串行 *** 作,是隔离级别最高的也是效率最低的,很少人用

面试官追问:Innodb引擎默认隔离级别是哪个

答:可重复读

面试官追问:可重复读的实现原理

答:使用了MVCC多版本控制(类似乐观锁),Innodb引擎会给每一行数据加一个版本号信息,当一个事务修改一个数据时会增加它的版本号+1,当一个事务开始的时候会缓存下此时的版本号,后面读取的时候只会读取这个版本号的数据,因此别的事务提交了修改数据的版本号大于它,因此不会被读到

面试官追问:事务的隔离级别如何设置:

答:在Mysql命令行下调用命令 set global.tx_isolation,但这样Mysql重启失效,修改my.cnf来永久设置

面试官追问:可重读读有什么问题

答:会出现幻读,幻读是指事务读取到一个值无法准确继续后续 *** 作。例如读取一个值,没有则插入,但是等插入的时候其他事务已经插入了,这就会导致插入失败,解决办法:sql语句显示加锁 :select xxxx for update,其他事务修改数据则会阻塞

1.介绍一下测试流程(重点,常见!)

2.介绍一下测试方法

3.介绍一下测试用例设计方法(用例设计方法&测试方法需要分清楚)

4.设计一个登录页面的用例(提供某个场景的设计用例,重点!)

5.举例说明项目推进的能力(针对个人评价的举例说明)

6.考试中遇到的比较难的一个项目是?(掌握自己简历上的项目)

7.印象深刻的一个bug?

8.你们公司是不是敏捷开发?介绍一下敏捷开发?

9.复盘会议的主要内容有哪些?

10.App 的兼容性怎么测,App 的接口测试怎么测?

11.Web 端测试和 App 端测试有何不同(常见)

1. 工作中常使用的 SQL 语法有哪些?

2.数据库存储过程

3.SQL 常见查询语句编写(此处仅举例常见的查询语句,如有更多坑,希望补充)

a.查询所有学生的数学成绩,显示学生姓名 name, 分数, 由高到低。

b.统计每个学生的总成绩(由于学生可能有重复名字),显示字段:学生 id,姓名,总成绩。

c.列出各门课程成绩最好的学生, 要求显示字段: 学号,姓名,科目,成绩

4.慢查询是什么意思?

5.导致数据库性能差的可能原因有哪些?

6.Redis 缓存应用场景

7.怎么定位 Redis 缓存失效问题(缓存坏了)

1. 工作中常用的 Linux 命令有哪些?

2.什么命令可以帮助 Linux 执行 Windows 上传的脚本?

3简述 Linux 三剑客

4.如何通命令定位 Linux 服务器下的日志?

5.简述项目中的环境搭建和维护

1. 自动化代码中,用到了哪些设计模式?

2. 什么是断言?

3. UI 自动化测试中,如何做集群?

4. 怎么对含有验证码的功能进行自动化测试?

5. 如何优化和提高 Selenium 脚本的执行速度?

6. 接口测试能发现哪些问题?

7. Selenium 中隐藏元素如何定位?

8. 如何判断一个页面上元素是否存在?

9. 如何提高脚本的稳定性?

10. 如何定位动态元素?

11. 如何通过子元素定位父元素

12. 平常遇到过哪些问题? ?如何解决的

13. 一个元素明明定位到了,点击无效(也没报错),如果解决?

14. 测试的数据你放在哪?

15. 什么是数据驱动,如何参数化?

16. 其他接口都需要登录接口的信息,怎么去让这个登录的接口只在其他接口调用一次?

17. 接口产生的垃圾数据如何清理?

18. 怎么用接口案例去覆盖业务逻辑?

1. 性能测试指标包括哪些

2. 如果一个需求没有明确的性能指标,要如何开始进行性能测试?

3. 介绍 JMeter 聚合报告包括哪些内容?

4. 如果有一个页面特别卡顿,设想一下可能的原因?

5. 说一说项目中的实际测试内容

6. 介绍一下 JMeter 进行性能测试的过程

7. 介绍一下 JMeter 和 LoadRunner 的区别

全套【软件测试/自动化测试】海量资料免费领取


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6760299.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-27
下一篇 2023-03-27

发表评论

登录后才能评论

评论列表(0条)

保存