• 技术文章 >数据库 >MySQL

    mysql InnoDB的特性

    小妮浅浅小妮浅浅2021-09-06 09:51:23原创3833

    1、插入缓存,提升插入性能。

    insertbuffer是insertbuffer的增强版,insertbuffer只对插入有效,而changebuffer对insert/update/delete有效。插入缓存只对非唯一的索引和辅助索引有效。每次插入都不是写在索引页上,而是先判断插入的非聚集索引页是否在缓存中。如果是,直接插入。如果不存在,插入insertbuffer,按一定频率合并,写回磁盘。

    2、二次写,保障InnoDB存储引擎操作数据页的可靠性。

    Double write分为两部分,一部分是内存中的double write buffer,大小为2MB,另一部分是物理磁盘上共享表空间中连续的128个数据页,即两个区域的大小(同样是2MB)。

    3、自适应hash索引,hash是等值查询。

    InnoDB存储引擎会监控表上每个索引页的查询。如果观察到建立hash索引会带来速度提升,那么建立相应的索引就叫自适应哈希索引。

    4、异步IO,提高磁盘的操作性能。

    目前的数据库系统一般采用异步IO来处理磁盘操作,InnoDB存储引擎也是如此,AIO的优点是减少了SQL查询所需的时间。

    5、刷新邻接页

    在刷新脏页时,InnoDB存储引擎会检测该区域是否有其他脏页,如果有,则一起刷新。

    以上就是mysql InnoDB的特性,希望对大家有所帮助。更多mysql学习指路:MySQL

    推荐操作系统:windows7系统、mysql5.8、DELL G3电脑

    专题推荐:mysql innodb
    上一篇:mysql如何获取hive表的元数据信息 下一篇:mysql不走索引的SQL语句

    相关文章推荐

    • mysql分区的应用场景• mysql触发器的缺陷分析• mysql蠕虫复制的使用场景• mysql主键冲突的解决方案• mysql查询选项如何理解• mysql字段选择是什么• mysql蠕虫复制是什么意思• MySQL获取当前时间和时间戳• mysql如何获取hive表的元数据信息

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网