zoukankan      html  css  js  c++  java
  • 存储引擎

    一、MyISAM

    1. 特点:

    Mysql5.5版本之前的默认存储引擎

    数据表文件组成:表名.frm .MYD .MYI
    frm 描述表结构 MYD保存表数据 MYI存储表索引

    2. 特性:

    并发性与锁级别-表级锁;

    支持全文检索

    支持数据压缩

    3. 使用场景:

    非事务性应用(数据仓库,报表,日志数据);

    只读类应用;

    空间类应用(空间函数,坐标);

    二、Innodb

    1. 特点:

    Mysql 5.5 以及以后版本默认的存储引擎;

    2. 表空间描述:

    SHOW VARIABLES LIKE '%innodb_file_per_table%';

    ON:独立表空间(包含文件.frm + .ibd);

    OFF:系统表空间 (ibdataX);

    3. 表空间对比:

    • 系统表空间无法简单的收缩文件大小
    • 独立表空间可以通过optimize table 收缩系统文件
    • 系统表空间会产生IO瓶颈
    • 独立表空间可以同时向多个文件刷新数据

    4. 特性:

    • InnoDB 是一个事务性存储引擎
    • 完全支持事物的ACID
    • Redo Log 和 Undo Log
    • Innodb 支持行级锁(并发程度更高)

    三、两者之间的对比

    对比项
    MyISAM 
    InnoDB
    主外键
    不支持 支持
    事物 不支持 支持
    行级锁 表锁,即操作一条记录,也会锁住整个表;不适合高并发操作

    行锁,也支持表级锁,行锁的只是锁住某一行,不对其他行造成影响;

    适合高并发操作

    缓存 只是缓存索引,不缓存真是数据
    不仅缓存索引还要缓存真
    实数据,对内存要求较高,
    而且内存大小对性能有决
    定性的影响
    表空间
    关注点 性能 事物
    默认安装 Y 5.5版本之前 Y 5.5 版本即以后的版本
  • 相关阅读:
    MQTT:前端js客户端库MQTT.js
    MQTT:java客户端库Paho
    EMQ X:认证
    EMQ X:初体验
    MQTT协议
    连接Mysql时报javax.net.ssl.SSLHandshakeException No appropriate protocol (protocol is disabled or cipher suites are inappropriate)错误
    微星11代gp76 3070解锁140w功率
    Jenkins:使用ssh方式拉取gitlab代码
    juc:AQS
    juc:LockSupport
  • 原文地址:https://www.cnblogs.com/lys-lyy/p/11161185.html
Copyright © 2011-2022 走看看