美文网首页
Mqsql引擎

Mqsql引擎

作者: 一如既往wfqwfq | 来源:发表于2019-09-26 13:53 被阅读0次

1、Innodb引擎

  • Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别。
  • 该引擎还提供了行级锁和外键约束
  • 使用行级锁也不是绝对的,如果在执行一个SQL语句时MySQL不能确定要扫描的范围,InnoDB表同样会锁全表。
  • 它的设计目标是处理大容量数据库系统,它本身其实就是基于MySQL后台的完整数据库系统
  • MySQL运行时Innodb会在内存中建立缓冲池,用于缓冲数据和索引。
  • 该引擎不支持FULLTEXT类型的索引(不支持全文索引)。
  • 它没有保存表的行数,当SELECT COUNT(*) FROM TABLE时需要扫描全表。
  • 当需要使用数据库事务时,该引擎当然是首选。
  • 由于锁的粒度更小,写操作不会锁定全表,所以在并发较高时,使用Innodb引擎会提升效率。

2、MyIASM引擎

  • MyIASM是MySQL默认的引擎,
  • 但是它没有提供对数据库事务的支持,也不支持行级锁和外键,
  • 因此当INSERT(插入)或UPDATE(更新)数据时即写操作需要锁定整个表,效率便会低一些。
  • MyIASM中存储了表的行数,于是SELECT COUNT(*) FROM TABLE时只需要直接读取已经保存好的值而不需要进行全表扫描。
  • 如果表的读操作远远多于写操作且不需要数据库事务的支持,那么MyIASM也是很好的选择。

3、区别:

  • MyIASM是非事务安全的,而InnoDB是事务安全的
  • MyIASM锁的粒度是表级的,而InnoDB支持行级锁
  • MyIASM支持全文类型索引,而InnoDB不支持全文索引
  • MyIASM相对简单,效率上要优于InnoDB,小型应用可以考虑使用MyIASM
  • MyIASM表保存成文件形式,跨平台使用更加方便

4、应用场景:

  • MyIASM管理非事务表,提供高速存储和检索以及全文搜索能力,如果再应用中执行大量select操作,应该选择MyIASM
  • InnoDB用于事务处理,具有ACID事务支持等特性,如果在应用中执行大量insert和update操作,应该选择InnoDB

相关文章

  • Mqsql引擎

    1、Innodb引擎 Innodb引擎提供了对数据库ACID事务的支持,并且实现了SQL标准的四种隔离级别。 该引...

  • mqsql练习

    下面的语句是否可以执行成功select last_name , job_id , salary as salfro...

  • MySQL5.6+Centos7.6集群搭建

    1、单节点搭建 1.1 准备 需要的软件:ssh客户端,filezilla,centos7,mqsql5.6 使用...

  • MqSQL - 调优手段

    SQL调优 SQL 调优往往是解决数据库问题的第一步,往往投入少部分精力就能获得较大的收益。SQL 调优主要目的是...

  • 店铺运营情况分析-MqSQL

    一、项目背景 本项目对某线上店铺在三四月份的销售情况进行分析,从整体销售情况、用户消费行为两个方向进行分析。其中用...

  • Ubuntu 16.04 安装 mysql

    先更新APT源 安装mqsql 上述命令会:apt-get将查看所有可用的mysql-server软件包,并确定M...

  • Mysql Review 之函数篇

    数据处理函数 Mqsql 和其他大多数计算机语言一样,支持利用函数处理数据,大多数SQL都支持以下类型的函数. 处...

  • 10.1KOA ejs 模版引擎

    ejs 模版引擎 安装模版引擎中间件 安装模版引擎 定义模版 使用模版引擎 具体 ejs 模版引擎使用 http:...

  • async 和 defer

    HTML加载过程 1. 两个引擎 浏览器的引擎可以分为渲染引擎和 JS 引擎。 JS 引擎相对独立,而渲染引擎又包...

  • 撮合引擎开发:开篇

    撮合引擎开发:开篇撮合引擎开发:MVP版本撮合引擎开发:数据结构设计撮合引擎开发:对接黑箱撮合引擎开发:解密黑箱流...

网友评论

      本文标题:Mqsql引擎

      本文链接:https://www.haomeiwen.com/subject/zemguctx.html