MySQL常用的四种引擎的介绍

(1):MyISAM存储引擎:不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表

支持3种不同的存储格式,分别是:静态表;动态表;压缩表

静态表:表中的字段都是非变长字段,这样每个记录都是固定长度的,优点存储非常迅速,容易缓存,出现故障容易恢复;缺点是占用的空间通常比动态表多(因为存储时会按照列的宽度定义补足空格)ps:在取数据的时候,默认会把字段后面的空格去掉,如果不注意会把数据本身带的空格也会忽略。

动态表:记录不是固定长度的,这样存储的优点是占用的空间相对较少;缺点:频繁的更新、删除数据容易产生碎片,需要定期执行OPTIMIZE TABLE或者myisamchk-r命令来改善性能

压缩表:因为每个记录是被单独压缩的,所以只有非常小的访问开支

(2)InnoDB存储引擎*

该存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比MyISAM引擎,写的处理效率会差一些,并且会占用更多的磁盘空间以保留数据和索引。 
InnoDB存储引擎的特点:支持自动增长列,支持外键约束

(3):MEMORY存储引擎

Memory存储引擎使用存在于内存中的内容来创建表。每个memory表只实际对应一个磁盘文件,格式是.frm。memory类型的表访问非常的快,因为它的数据是放在内存中的,并且默认使用HASH索引,但是一旦服务关闭,表中的数据就会丢失掉。 
MEMORY存储引擎的表可以选择使用BTREE索引或者HASH索引,两种不同类型的索引有其不同的使用范围

Hash索引优点: 
Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。 
Hash索引缺点: 那么不精确查找呢,也很明显,因为hash算法是基于等值计算的,所以对于“like”等范围查找hash索引无效,不支持;

Memory类型的存储引擎主要用于哪些内容变化不频繁的代码表,或者作为统计操作的中间结果表,便于高效地对中间结果进行分析并得到最终的统计结果,。对存储引擎为memory的表进行更新操作要谨慎,因为数据并没有实际写入到磁盘中,所以一定要对下次重新启动服务后如何获得这些修改后的数据有所考虑。

(4)MERGE存储引擎

Merge存储引擎是一组MyISAM表的组合,这些MyISAM表必须结构完全相同,merge表本身并没有数据,对merge类型的表可以进行查询,更新,删除操作,这些操作实际上是对内部的MyISAM表进行的。

转载于:https://www.cnblogs.com/hyfl/p/10883431.html

mysql五大引擎之间的区别和优劣之分相关推荐

  1. mysql引擎与操作系统的关系_mysql五大引擎之间的区别和优劣之分

    ---恢复内容开始--- 一:MylSAM:创建一个myisam存储引擎的表的时候回出现三个文件1.tb_demo.frm,存储表定义:2.tb_demo.MYD,存储数据:3.tb_demo.MYI ...

  2. php里面sql是什么意思,MySQL和SQL是什么?MySQL和SQL之间的区别有哪些

    MySQL和SQL之间的区别有哪些?很多PHP的初学者,对MySQL,MyAdmin和SQL有什么区别并不是很清楚?下面 第一PHP社区 就带领大家来学习一下MySQL和SQL之间的区别.[推荐阅读: ...

  3. sql与mysql的区别_MySQL和SQL是什么?MySQL和SQL之间的区别有哪些

    MySQL和SQL之间的区别有哪些?很多PHP的初学者,对MySQL,MyAdmin和SQL有什么区别并不是很清楚?下面php中文网就带领大家来学习一下MySQL和SQL之间的区别.[推荐阅读:MyS ...

  4. MySQL数据库引擎介绍、区别、创建和性能测试的深入分析

    深入理解MySQL的数据库引擎的类型 作者: 字体:[增加 减小] 类型:转载 本篇文章是对MySQL的数据库引擎的类型进行了详细的分析介绍,需要的朋友参考下   你能用的数据库引擎取决于mysql在 ...

  5. 【mysql】存储引擎之间的区别

    使用存储引擎的优点:每个存储引擎都有各自的特点,可以根据具体应用建立不同存储引擎表 各种存储引擎的区别 InnoDB存储引擎 InnoDB存储尹支持事务 设计目标:面向在线事务处理(OLTP)的应用 ...

  6. MySQL存储引擎介绍及区别

    在缺省情况下,MySQL支持3种存储引擎:ISAM.MYISAM和HEAP.另外两种存储引擎InnoDB和Berkerly(BDB)也常常使用到. 一.ISAM ISAM执行读取操作的速度很快,而且不 ...

  7. mysql, mysqladmin, mysqld之间的区别。

    mysqld is the server executable (one of them)   #服务执行工具 mysql is the command line client  # 客户端工具   ...

  8. MySql存储引擎的种类和区别

    一. Mysql的体系结构概览 整个MySQL Server由以下组成 Connection Pool : 连接池组件 Management Services & Utilities : 管理 ...

  9. mysql 储存引擎_详解mysql存储引擎的标准

    浅谈选择mysql存储引擎的标准 主要存储引擎的介绍 1.InnoDB存储引擎 InnoDB是MySQL的默认事务型引擎,它被设计用来处理大量的短期(short-lived)事务.除非有非常特别的原因 ...

最新文章

  1. 零的突破!双非高校教师荣获杰青!曾把自己P成女娲,登上学术期刊封面
  2. 2021年人工神经网络第四次作业-第五题:危险品识别
  3. 花了2周时间收集汇总的大厂面经,节后准备跳槽的看过来!
  4. linux:apt的源
  5. C#中控制窗体的显示与隐藏
  6. 点击下载!《阿里云SRE技术期刊》2021年5月刊发布啦!
  7. 一站式快速自助建站-超低价0代码建站套餐助你轻松拥有自己的网站
  8. 视觉智能产品发布 阿里云这项世界第一的技术现在人人可用
  9. python更新到哪个版本了_将Python自带版本(2.6.6)升级到2.7.9
  10. 用mysql建立商城数据字典_把mysql数据库生成数据字典,直接可用
  11. 自己的  「画面文言修正 check list」
  12. python零基础入门教程-零基础入门Python爬虫不知道怎么学?这是入门的完整教程...
  13. wx小程序 解决子组件样式不起效
  14. 自然语言处理NLP星空智能对话机器人系列:深入理解Transformer自然语言处理 Semantic Role Labeling (SRL).
  15. This scheduler instance is still active but was recovered by another instance in the cluster.
  16. window无法访问此文件夹,请确保输入的文件名是正确的,并且您有权访问此文件夹
  17. codewars----Exes and Ohs
  18. 51Nod 1278 相离的圆 c/c++题解
  19. CocosCreator高斯模糊深度优化版
  20. 电影「哪吒之魔童降世」免 费 高 清 完 整 版 在 线 观 看

热门文章

  1. cocos3 深入理解tank和子弹之间的关系
  2. 深度学习的五个能力级别
  3. python实现单例模式
  4. P2051 中国象棋
  5. 106:HttpResponse对象讲解
  6. CentOS7配置iptables防火墙
  7. 金山WPS发布了Linux WPS Office
  8. Spring Boot spring mvc 拦截器
  9. thrift数据类型
  10. 【WPF-Devexpress】ChartControl-CrosshairLabel显示内容居右