Mysql逻辑架构

作者: 多彩海洋 | 来源:发表于2019-07-04 15:24 被阅读0次
    image.png
    • Connectors
      指不同语言中与SQL的交互
    • Connection Pool:连接池
    • 管理缓冲用户连接,线程处理等需要缓存的需求
    • SQL Interface: SQL接口
      接受用户的SQL命令,并且返回用户需要查询的结果。比如select from就是调用SQL Interface
    • Parser: 解析器

    主要功能是将SQL语句进行语义和语法的分析,分解成数据结构,然后按照不同的操作类型进行分类,

    • Optimizer:查询优化器
    • sql语句在查询之前会使用查询优化器对查询进行优化
    • 使用“选取-投影-连接”策略进行查询。
     用一个例子就可以理解: select uid,name from user where gender = 1;
    
         * 这个select 查询先根据where 语句进行选取,而不是先将表全部查询出来以后再进行过滤
    
         * 这个select查询先根据uid和name进行属性投影,而不是将属性全部取出以后再进行过滤
    
         * 将这两个查询条件联接起来生成最终查询结果
    
    • Cache和Buffer: 查询缓存
      Query Cache 对性能的提高是非常显著的。当然它对内存的消耗也是非常大的。
    • 存储引擎接口
      MySQL区别于其他数据库的最重要的特点就是其插件式的表存储引擎
      注意:存储引擎是基于表的,而不是数据库。
      image.png

    使用索引的注意事项

    • 尽量创建组合索引(组合索引其实会默认按照最左前缀原则帮我们创建多组索引)
      组合索引(id,name,sex)
    • 索引最左前缀原则
    • 索引覆盖:要查询的列,也要使用索引覆盖住

    相关文章

      网友评论

        本文标题:Mysql逻辑架构

        本文链接:https://www.haomeiwen.com/subject/qufrhctx.html