zoukankan      html  css  js  c++  java
  • MySQL逻辑架构概述

    1.MySQL逻辑架构

    MySQL逻辑架构图

    MySQL逻辑架构分四层

    1.连接层:主要完成一些类似连接处理,授权认证及相关的安全方案。

    2.服务层:在 MySQL据库系统处理底层数据之前的所有工作都是在这一层完成的,包括权限判断,SQL接口,SQL解析,SQL分析优化, 缓存查询的处理以及部分内置函数执行(如日期,时间,数学运算,加密)等等。各个存储引擎提供的功能都集中在这一层,如存储过程,触发器,视图等。

    3.引擎层:是底层数据存取操作实现部分,由多种存储引擎共同组成。真正负责MySQL中数据的存储和提取。就像Linux众多的文件系统 一样。每个存储引擎都有自己的优点和缺陷。服务器是通过存储引擎API来与它们交互的。这个接口隐藏 了各个存储引擎不同的地方。对于查询层尽可能的透明。这个API包含了很多底层的操作。如开始一个事物,或者取出有特定主键的行。存储引擎不能解析SQL,互相之间也不能通信。仅仅是简单的响应服务器 的请求。

    4.存储层:将数据存储于裸设备的文件系统之上,完成与存储引擎的交互。

    参考张冲andy的文章:MySQL逻辑架构概述

    MySQL语句执行流程图

    2.MySQL存储引擎

    查看MySQL中现在提供的存储引擎:

    show engines;
    

    查看MySQL现在默认使用的存储引擎:

    show variables like '%storage_engine%';
    

    查看某表使用的存储引擎:

    show create table 表名;
    

    从上面MySQL逻辑架构图可以看到,MySQL有很多种存储引擎,他们以插件的形式存在,需要那个存储引擎则装上那个存储引擎。
    其实在MySQL中主要使用MyISAM引擎和InnoDB引擎。

    MyISAM引擎和InnoDB引擎简单对比:

    MyISAM引擎 InnoDB引擎
    主外键 不支持 支持
    事务 不支持 支持
    行表锁 表所.不适合高并发 行锁.适合高并发
    缓存 只缓存索引 缓存索引和真实数据
    表空间
    关注点 性能.偏读 事务
    默认安装
  • 相关阅读:
    再谈PHP、Python与Ruby
    php消息队列
    创业如同追女生:成功的创业者都是追女生好手
    Windows 下 Python easy_install 的安装
    常用Python第三方库 简介
    Highcharts使用手册
    sqoop java api
    redis 读写分离
    linux 安装redis
    hive 安装和部署
  • 原文地址:https://www.cnblogs.com/ChangAn223/p/10686639.html
Copyright © 2011-2022 走看看