一、数据库文件
innodb5.7以前:ibdata1-默认是系统使用的表空间文件
innodb5.7以后8.0以前:数据库会建立一个对应的文件夹,数据库信息会放在这个文件夹下db.opt中
每个表会有两个文件,一个是test.frm存放的是表结构和字符集等信息,一个是test.ibd文件存放的是数据。
innodb8.0后:对应的数据文件夹下,只有一个文件test.ibd文件表结构、字符集和数据都放里面
可以通过 ibd2sdi --dump-file=text.txt test.ibd 解析查看数据
二、实战查询优化
show profiles : 查询最近全部执行的语句
show profile : 查询出最近一条的执行语句的执行过程情况
show profile for query n : 查询具体某n条的执行语句的执行过程情况
show profile cpu,block io for query n : 还可以查看CPU和io情况
三、索引
一般查找行记录,最多只需1~3次磁盘IO,因为一般树的结构是2-4层,但根节点在innodb存储索引设计时将根节点放到内存中的
页介绍:
文件头、页头、最小记录最大记录、用户记录、空闲空间、页目录、文件尾
一般分为三个部分:
第一部分:文件头和文件尾,里面存放了上一页下一页指针,还有校验页文件完整性的
第二部分:最小记录最大记录、用户记录、空闲空间
第三部分:页头、页目录