前言:
数据库是30k以内的工程师面试必问的问题,而且如果问数据库,那么一定是mysql , N年前可能java工程师出去面试, oracle这块的技能是杀手锏,现在已经没人说,会oracle是加分项了,现在都是熟悉大数据hadoop、hbase等技术是加分项。
如果你说你精通MySQL,那么我问你的这几个问题,你都能答上来吗?
- MySQ索引的原理和数据结构能介绍一下吗?
- b+树和b-树有什么区别?
- MySQL聚簇索引和非聚簇索引的区别是什么?
- 他们分别是如何存储的?
- 使用MySQL索引都有哪些原则?
- MySQL复合索引如何使用?
如果你还不能完全精通,那么请保持对技术的敬意,来找我获取到这份MySQL文档精读一下吧,保证你有所收获,以后再有面试官问你这个问题,你就可以随便吊打了!
毕竟篇幅有限,我如果整体分享出来,推荐机制也会制裁我,这篇文章能不能帮到更多人,全靠您的点赞转发支持!
如果您需要获取到这份MYSQL的文档,可以看图片中的步骤
高性能MySQL文档
知己知彼百战百胜,让我们先熟悉MySQL的历史,有利于我们学习MySQL数据库
高性能MySQL文档
和其他数据库系统相比,MySQL有点与众不同,它的架构可以在多种不同场景中应用并发挥好的作用,但同时也会带来一点选择上的困难。MySQL并不完美,却足够灵活,能够适应高要求的环境,例如Web类应用。同时,MySQL既可以嵌入到应用程序中,也可以支持数据仓库、内容索引和部署软件、高可用的冗余系统、在线事务处理系统(OLTP)等各种应用类型。
服务器性能剖析
服务器性能剖析
问10个人关于性能的问题,可能会得到10个不同的回答,比如“每秒查询次数”、“cPU利用率”、“可扩展性”之类。这其实也没有问题,每个人在不同场景下对性能有不同的理解,但本章将给性能一个正式的定义。
创建高性能的索引
索引(在MySQL中也叫做“键(key)") 是存储引擎用于快速找到记录的一种数据结构。这是索引的基本功能,除此之外,本章还将讨论索引其他一些方面有用的属性。
对于B-Tree的技术图谱,在本PDF上也是有所解析的
建立在B-Tree结构(从技术上来说是B+Tree)上的索引
MySQL高级特性
MySQL从5.0和5.1版本开始引人了很多高级特性,例如分区、触发器等,这对有其它关系型数据库使用背景的用户来说可能并不陌生。
本章详细介绍了前面各个章节中提到的一些MySQL特性。起到一个小总结的作用
MySQL高级特性
MySQL高级特性总结
MySQL高可用:
高可用性实际。上有点像神秘的野兽。它通常以百分比表示,这本身也是一种暗示 :高可用性不是绝对的,只有相对更高的可用性。100%的可用性是不可能达到的。可用性的“9”规则是表示可用性目标最普遍的方法。你可能也知道,“5 个9”表示9.999%的正常可用时间。换句话说,每年只允许5分钟的宕机时间。对于大多数应用这已经是令人惊叹的数字,尽管还有一些人试图获得更多的“9”。
索引:
我相信本书预示了MySQL的光明前景。MySQL已经支持高要求的工作负载,本书作者也在努力提升MySQL社区内对性能的认识。同时,他们还直接为性能提升做出了贡献,包括XtraDB和XtraBackupo一直以来我从他们身上学到了不少东西,也希望读者多花点时间读读本书,一定会同样有所收益。
——Mark Callaghan, Facebook软件工程师
整体清晰的目录:
如何获取呢?