zoukankan      html  css  js  c++  java
  • MySQL数据库中常用的引擎有几种?有什么区别?

    常用的有以下3种
    InnoDB、Myisam、Memory

    区别:

    1.InnoDB支持事务,支持外键,支持行锁,写入数据时操作快,支持ACID特性,ACID是Atomic(原子性)、Consistency(一致性)、Isolation(隔离性)和Durability(持久性)的英文缩写,MySQL5.6版本以上才支持全文索引

    2.Myisam不支持事务。不支持外键,支持表锁,支持全文索引,读取数据快

    3.Memory所有的数据都保留在内存中,不需要进行磁盘的IO所以读取的速度很快, 但是一旦关机的话表的结构会保留但是数据就会丢失,表支持Hash索引,因此查找速度很快

    4.InnoDB跟Myisam的默认索引是B+tree,Memory的默认索引是hash

    5.InnoDB聚簇索引:将数据存储与索引放到了一块,找到索引也就找到了数据

    6.Myisam非聚簇索引:将数据存储于索引分开结构,索引结构的叶子节点指向了数据的对应行,myisam通过key_buffer把索引先缓存到内存中,当需要访问数据时(通过索引访问数据),在内存中直接搜索索引,然后通过索引找到磁盘相应数据,这也就是为什么索引不在key buffer命中时,速度慢的原因

  • 相关阅读:
    单例模式
    抽象类的作用和应用场景
    java内部类的作用
    java多线程
    IO流--与properties集合配合使用
    IO流--序列化流与反序列化流
    8 个必备的PHP功能开发
    CSS3 box-shadow:
    移动平台的meta标签-----神奇的功效
    Android Screen Monitor抓取真机屏幕
  • 原文地址:https://www.cnblogs.com/nginxTest/p/13445382.html
Copyright © 2011-2022 走看看