常见相关问题

数据库事务(ACID)

原子性:事务是最小的执行单位,不允许分割。事务的原子性确保动作要么全部完成,要么完全不起作用;

一致性: 执行事务前后,数据保持一致,多个事务对同一个数据读取的结果是相同的;

隔离性: 并发访问数据库时,一个用户的事务不被其他事务所干扰,各并发事务之间数据库是独立的;

持久性: 一个事务被提交之后。它对数据库中数据的改变是持久的,即使数据库发生故障也不应该对其有任何影响。

什么是脏读?幻读?不可重复读?

脏读(Drity Read): 某个事务已更新一份数据,另一个事务在此时读取了同一份数据,由于某些原因,前一个RollBack了操作,则后一个事务所读取的数据就会是不正确的。

不可重复读(Non-repeatable read): 在一个事务的两次查询之中数据不一致,这可能是两次查询过程中间插入了一个事务更新的原有的数据。

幻读(Phantom Read): 在一个事务的两次查询中数据不一致,例如有一个事务查询了几列(Row)数据,而另一个事务却在此时插入了新的几列数据,先前的事务在接下来的查询中,就会发现有几列数据是它先前所没有的。

什么是事务的隔离级别?MySQL的默认隔离级别是什么?

由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。

SQL 标准定义了四个隔离级别:

· READ-UNCOMMITTED(读取未提交): 最低的隔离级别,允许读取尚未提交的数据变更,可能会导致脏读、幻读或不可重复读。

· READ-COMMITTED(读取已提交): 允许读取并发事务已经提交的数据,可以阻止脏读,但是幻读或不可重复读仍有可能发生。

· REPEATABLE-READ(可重复读): 对同一字段的多次读取结果都是一致的,除非数据是被本身事务自己所修改,可以阻止脏读和不可重复读,但幻读仍有可能发生。

· SERIALIZABLE(可串行化): 最高的隔离级别,完全服从ACID的隔离级别。所有的事务依次逐个执行,这样事务之间就完全不可能产生干扰,也就是说,该级别可以防止脏读、不可重复读以及幻读。

Mysql 默认采用的 REPEATABLE_READ隔离级别 Oracle 默认采用的 READ_COMMITTED隔离级别

数据库为什么使用B+树而不是B树

· B树只适合随机检索,而B+树同时支持随机检索和顺序检索;

· B+树空间利用率更高,可减少I/O次数,磁盘读写代价更低。一般来说,索引本身也很大,不可能全部存储在内存中,因此索引往往以索引文件的形式存储的磁盘上。这样的话,索引查找过程中就要产生磁盘I/O消耗。B+树的内部结点并没有指向关键字具体信息的指针,只是作为索引使用,其内部结点比B树小,盘块能容纳的结点中关键字数量更多,一次性读入内存中可以查找的关键字也就越多,相对的,IO读写次数也就降低了。而IO读写次数是影响索引检索效率的最大因素;

· B+树的查询效率更加稳定。B树搜索有可能会在非叶子结点结束,越靠近根节点的记录查找时间越短,只要找到关键字即可确定记录的存在,其性能等价于在关键字全集内做一次二分查找。而在B+树中,顺序检索比较明显,随机检索时,任何关键字的查找都必须走一条从根节点到叶节点的路,所有关键字的查找路径长度相同,导致每一个关键字的查询效率相当。

· B-树在提高了磁盘IO性能的同时并没有解决元素遍历的效率低下的问题。B+树的叶子节点使用指针顺序连接在一起,只要遍历叶子节点就可以实现整棵树的遍历。而且在数据库中基于范围的查询是非常频繁的,而B树不支持这样的操作。

· 增删文件(节点)时,效率更高。因为B+树的叶子节点包含所有关键字,并以有序的链表结构存储,这样可很好提高增删效率。

B+树在满足聚簇索引和覆盖索引的时候不需要回表查询数据,

在B+树的索引中,叶子节点可能存储了当前的key值,也可能存储了当前的key值以及整行的数据,这就是聚簇索引和非聚簇索引。 在InnoDB中,只有主键索引是聚簇索引,如果没有主键,则挑选一个唯一键建立聚簇索引。如果没有唯一键,则隐式的生成一个键来建立聚簇索引。

当查询使用聚簇索引时,在对应的叶子节点,可以获取到整行数据,因此不用再次进行回表查询。

什么是聚簇索引?何时使用聚簇索引与非聚簇索引

· 聚簇索引:将数据存储与索引放到了一块,找到索引也就找到了数据

· 非聚簇索引:将数据存储于索引分开结构,索引结构的叶子节点指向了数据的对应行,myisam通过key_buffer把索引先缓存到内存中,当需要访问数据时(通过索引访问数据),在内存中直接搜索索引,然后通过索引找到磁盘相应数据,这也就是为什么索引不在key buffer命中时,速度慢的原因

mysql实验思维导图高清_MySQL思维导图相关推荐

  1. 小马哥成功超频一记.内图,高清.无码,套图

    最近闲来无事,一直在玩vmware gsx server .比起vmware workstation功能更加强大,便于集中管理.那家伙怎一个爽字了得.可耐server一词伤不起,服务器版在我的老牛小霸 ...

  2. Android 高清加载巨图方案 拒绝压缩图片

    Android 高清加载巨图方案 拒绝压缩图片 转载请标明出处:  http://blog.csdn.net/lmj623565791/article/details/49300989:  本文出自: ...

  3. 我的世界药水合成表图Java_我的世界药水合成表图高清配方-我的世界药水合成表图一览...

    我的世界药水合成表图高清配方有哪些?今天的这篇攻略和大家聊一聊关于我的世界药水合成表图一览,希望能够帮助到有需要的朋友. 我的世界药水合成表图高清配方-我的世界药水合成表图一览 1.粗制的药水(作用最 ...

  4. 怎么把视频做成高清的GIF动态图?简单又快的方法

    平时看到各种影视剧或者视频的时候,总会想把把视频最精华的片段或者自己喜欢的部分做成GIF动图- 我一般会用超级转换秀来把视频转成GIF,可以导出高清的GIF动图 而且我刚开始用的时候,也会觉得操作起来 ...

  5. Python+Fiddler5带你爬取6000+高清王者荣耀cosplay图

    Python+Fiddler5带你爬取6000+高清王者荣耀cosplay图 写在前面 最近在玩蛇的时候发现一个抓包神器Fiddler,简直不要太好用,于是当作练手就把这软件给安排了,王者荣耀盒子一个 ...

  6. gif动态图高清图片大全,gif动态图怎么制作?

    随着人们生活水平的提高,越来越多的人开始关注娱乐.而在休闲娱乐方面,gif动图是一种无可替代的选择. gif动图具有轻松愉快的氛围,能够让人们在短暂休息之后感到精神焕发.此外,gif动图还具有很强的视 ...

  7. 如何下载吉林省卫星图高清版大图

    如何下载吉林省卫星图高清版大图 吉林省行政区域简介 吉林,地处中国东北中部,东北亚地理中心,因清初建吉林乌拉城而得名,简称"吉",省会长春,原省会吉林市.地跨东经121°38′-1 ...

  8. 高清加载巨图方案-拒绝压缩图片

    Android 高清加载巨图方案 拒绝压缩图片 转载请标明出处: http://blog.csdn.net/lmj623565791/article/details/49300989: 本文出自:[张 ...

  9. (宁波江北区地图)区划乡镇图高清矢量cdr|pdf格式(详细2021年)

    (宁波江北区地图)区划乡镇图高清矢量cdr|pdf格式(详细2021年)pdf格式可以导入cdr软件ai软件另保存cdr,ai格式,可以编辑内容文字,矢量高清图,尺寸高1.5米宽2米.可以无限放大矢量 ...

  10. 计算机过去与未来ppt背景图,过去无可挽回未来可以改变背景图高清图片大全

    过去无可挽回未来可以改变背景图高清图片大全是一组在抖音上面很火爆的表情包图片,一组超多内容可以去查看的素材.会让用户在线很简单的进行下载,还可以免费的就会让用户进行使用.大量会帮助到用户进行保存的内容 ...

最新文章

  1. 利用kickstart实现pxe自动安装linux
  2. hdu4525 威威猫系列故事——吃鸡腿
  3. java 文件拷贝保留原来的属性,Java - 复制JPG,同时保留所有文件属性
  4. Qt学习笔记-使用QStyleFactory::create()变换风格
  5. 更改计算机用户名后无法共享文件夹,怎样使文件夹不被共享
  6. 怎样构建深度学习模型?六步走,时刻小心过拟合 | 入门指南
  7. 小米架构调整:将销售与服务部改组为中国区 王川任总裁
  8. MyBatis-SELECT基本查询
  9. NOPIExcel读写扩展
  10. 南方cass提取坐标生成表格_如何利用EXCEL随机生成测量点坐标导入南方CASS中计算土方量...
  11. PeakDo毫米波无线投屏器,你的无线图传神器
  12. 使用Arduino的自动开门器
  13. 高清影音发展的产物格式转换器
  14. 产业分析:短视频及直播营销报告
  15. SQL中实用的小技巧
  16. 常见的网络连接设备有哪些?
  17. 软件的版本Alpha Beta RC Build等到底是什么意思?
  18. 20多个可以提高你安卓开发技能的开源app
  19. 2021年上半年总结
  20. 创业思维 - MikeCRM的故事

热门文章

  1. 29 伪造ICMP数据包的IP层
  2. 影楼修片走下神坛 PS磨皮技巧大揭秘
  3. 8051RTX编程一例
  4. 我的世界起床战争java 版服务器_我的世界中国版起床战争下载-我的世界中国版起床战争服务器_5577安卓网...
  5. 协议分析_qvod_获取快播视频的下载地址_20120203
  6. android qq轻聊版多个,Android QQ轻聊版怎样样
  7. 时速云:基于K8S的容器PaaS,将成为未来IT基础设施的重要组成部分
  8. 百度云链接后的html,百度云链接失效,这样就能找回!
  9. 学习Python的几个优质平台
  10. 若干小球碰撞的一种暴力解题法