加入收藏 | 设为首页 | 会员中心 | 我要投稿 云计算网_泰州站长网 (http://www.0523zz.com/)- 视觉智能、AI应用、CDN、行业物联网、智能数字人!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL DBA面试常见问题总结--索引,事务,存储引擎,优化等

发布时间:2019-08-16 12:27:07 所属栏目:MySql教程 来源:波波说运维
导读:副标题#e# 这篇文章主要是针对开发人员的,所以不涉及到MySQL的服务部署等操作,主要包括索引,事务,存储引擎,优化等方面。 一、索引 关于MySQL的索引,之前实际上也介绍了很多次,这里主要介绍一些常用的面试题。 1. 什么是索引?索引是个什么样的数据结构呢?

多事务的并发进行一般会造成以下几个问题:

  • 脏读:A事务读取到了B事务未提交的内容,而B事务后面进行了回滚.
  • 不可重复读::当设置A事务只能读取B事务已经提交的部分,会造成在A事务内的两次查询,结果竟然不一样,因为在此期间B事务进行了提交操作.
  • 幻读::A事务读取了一个范围的内容,而同时B事务在此期间插入了一条数据.造成"幻觉".

3. 怎么解决这些问题呢?MySQL的事务隔离级别了解吗?

MySQL的四种隔离级别如下:

(1) 未提交读(READ UNCOMMITTED)

这就是上面所说的例外情况了,这个隔离级别下,其他事务可以看到本事务没有提交的部分修改.因此会造成脏读的问题(读取到了其他事务未提交的部分,而之后该事务进行了回滚).

这个级别的性能没有足够大的优势,但是又有很多的问题,因此很少使用.

(2) 已提交读(READ COMMITTED)

其他事务只能读取到本事务已经提交的部分.这个隔离级别有 不可重复读的问题,在同一个事务内的两次读取,拿到的结果竟然不一样,因为另外一个事务对数据进行了修改.

(3) REPEATABLE READ(可重复读)

(编辑:云计算网_泰州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读