zoukankan      html  css  js  c++  java
  • mysql体系结构

    MySQL体系结构

    1.客户端程序连接MySQL的两种方法

    • 通过网络连接
      mysql -u roo -poldboy123 -h 10.0.0.52
    • 通过套接字件文
      mysql -u root -poldboy -S /tmp/mysql.sock

    2.MySQL实例概念

    mysql实例:MySQL的后台进程+线程+预分配的内存结构

    3.MySQLD服务程序构成

    3.1 连接层

    连接层主要用来处理与客户端的连接与验证,如TCP/IP连接,sock的连接,然后再进行身份验证,验证成功之后会开启一个线程

    3.2 SQL层的处理流程

    1、接收到连接层送过过来的“SQL”
    2、由专门的模块,会判断SQL语法、语义(SQL语句的类型:DDL、DCL、DML)
    3、将不同类型的语句,送到专门的处理接口(解析器)
    4、解析器,将SQL解析成执行计划
    5、优化器,会选择“它”最优的执行计划交给执行器
    6、执行器,执行 执行计划,得出如何去“磁盘”获取数据的方法
    7、专门线程将获取数据的方法,送给下层(存储引擎层)继续处理。
    8、验证授权,当前用户对 库或表对象有没有操作的权限。
    9、查询高速缓存query_cache。
    10、记录修改操作日志binlog。

    3.3 存储引擎层

    存储引擎是充当不同表类型的处理程序的服务器组件

    • 存储引擎用于:
      存储数据
      检索数据
      通过索引查找数据
    • 双层处理
      上层包括SQL解析器和优化器
      下层包含一组存储引擎
    • SQL层不依赖于存储引擎:
      引擎不影响SQL处理
      有一些例外

    3.3.1 依赖于存储引擎的功能

    • 存储介质
    • 事务功能
    • 锁定
    • 备份和恢复
    • 优化
    • 特殊功能:
      全文搜索
      引用完整性
      空间数据处理

    <wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

  • 相关阅读:
    生成器
    各种表达式
    迭代器
    闭包函数及装饰器
    名称空间及作用域
    函数的嵌套
    函数对象
    OpenSSL Heartbleed “心脏滴血”漏洞简单攻击示例
    PHP函数usort是咋回事?还能当后门?
    CVE-2017-7269—IIS 6.0 WebDAV远程代码执行漏洞分析
  • 原文地址:https://www.cnblogs.com/yjiu1990/p/10845443.html
Copyright © 2011-2022 走看看