Mysql之其他总结

日志类型

 

数据类型

1.更小的通常更好
能正确存储的最小数据类型,优点是占用磁盘、内存和CPU都少
2.简单就好
3.尽量避免使用null
在数据库中null不等于null
对游湖和索引和值的比较都很复杂

MyISAM和InnoDB存储引擎对比

对比项MyISAMInnoDB
主外键 不支持 支持
事务 不支持 支持
行级锁 表锁,即使操作一条记录也会锁住整个表,不适合高并发的操作 行锁,操作时只锁一行,不对其他行有影响,适合高并发的操作
缓存 只缓存索引,不缓存真实数据 不仅缓存索引还要缓存真是数据,对内存要求较高,而且内存大小对性能由决定性的影响
表空间
关注点 性能 事务
默认安装

存储引擎
Mylsam:
Mylsam索引文件和数据文件是分离的
对应三个文件:frm:存储表结构信息、MYD:存储数据行、MYI:存储索引
使用B+Tree作为索引结构,叶节点的data域存放的是数据记录的地址。
查询一条数据的时候,如果查询条件增加了索引,会先从MYI文件中找到对应行的索引信息,在通过索引中data的磁盘地址值去MYD文件查询数据。

 

Innodb:
Innodb表数据文件本身就是按B+Tree组织的一个索引结构文件
对应两个文件:frm:存储表结构信息、ibd:存储索引及数据行
该存储引擎会把表数据直接存储到叶子节点的data里
总结:`Innodb的主键索引就是聚集索引,Mylsam是非聚集索引

 

相关系列文章:

 0.Mysql之如何插入数据剖析mysql各个技术点 :通过插入一条数据的过程引出mysql知识点:

1.mysql之事务隔离级别以及MVCC:ACID、事务级别以及产生问题、MVCC(三个隐藏字段、undolog、read_view详解)

2.Mysql之Innodb锁场景:锁分类、RC下各种加锁情况、RR下各种加锁情况

3.Mysql之主从复制原理:主从复制原理、二次提交、MTS、组提交、GTID

4.Mysql之数据结构 :hash、二叉树、AVL、平衡二叉树(红黑树)、B-Tree、B+Tree

5.Mysql之索引 :回表、索引覆盖、索引下推、MRR、FIC、索引方式、哈希索引

6.Mysql之其他知识  :日志、MyiSAM和InnoDB比较,基础知识体系

posted @ 2022-10-23 12:28  湫龙  阅读(16)  评论(0编辑  收藏  举报