查看表的引擎:
默认是
INNODB存储引擎:
可以通过在对应路径上cmd的终端上输入相当应的命令,看到这张表中的信息。
索引:
索引分类:
后面主要分享B+Tree索引和哈希索引。
B+Tree索引对应的数据结构:
B+Tree特点:所有结点都在叶子结点,上面的结点只是起到引导的作用,并没有存储数据。
进一步优化:
哈希索引:
思考题:
索引的分类:
名字是按照字母来排序的
找到Arm对应的10,再到上面找10对应的位置 ,中间有个叫回表查询的步骤
索引的语句:
案例:注意四种索引的写法
索引的性能分析:
慢查询:慢查询的语句要进行优化
可以通过这个操作来查询慢查询是否打开。
要先用这个命令行查看是否当前数据库支持have_profiing操作
为0表示当前是没有支持profiling这个操作
再设置为1,表示打开
上面两个操作开启后,就可以很方便的查看到刚刚执行的全部命令行的查询时间啦。用show profiles命令。
更详细的信息:要用到explain或desc(只需加在命令行前面即可,现实中用explain会比较多)
多表查询时的explain
重点关注type,看出SQL语句的性能指标,关注possible_key,key
在命令行最后加上\G,表中信息可以切换为每行,方便查看
尽量使用>=这样的符号而不是>.
注意不要用该索引和强制用该索引的区别
覆盖索引相比较于联合索引有时候可以减少回表查询这个步骤。