美文网首页大数据 爬虫Python AI Sql简友广场
Mysql 存储引擎(表类型)有哪些?

Mysql 存储引擎(表类型)有哪些?

作者: 默直 | 来源:发表于2019-10-15 23:18 被阅读0次

    Mysql 表类型有哪些?

    表类型?当初只知道数据库字段类型,varchar、int、float、date等等,怎么有出来个表类型呢,怀着迷茫的神色,上网搜搜是怎么回事吧(ε=(´ο`*)))唉)

    还好有度娘,给出了7种Mysql表类型以及详细讲解了每种类型的作用。

    数据库存储引擎是数据库底层软件组织,数据库管理系统(DBMS)使用数据引擎进行创建,查询,更新和删除数据,不同存储引擎提供不同的存储机制、索引技巧、锁定水平等功能。使用不同的存储存储引擎,还可以获得特定的功能。

    数据表类型:InnoDB、MyISAM、Gemeni、DBD,HEAP,ISAM,MERFE

    InnoDB表

    InnoDB--》Mysql5.5之后默认存储引擎

    InnoDB是一个健壮的事务型存储引擎,这种存储引擎已经被很多互联网公司使用,为用户操作非常大的数据存储提供一个强大的解决方案。InnoDB还引入了行级锁定和外键约束,在以下场合下,使用InnoDB是最理想的选择:

            1.更新密集的表。InnoDB存储引擎特别适合处理多重并发的更新请求;

            2.事务。InnoDB存储引擎是支持事务的标准MySQL存储引擎;

            3.自动灾难恢复。与其它的存储引擎不同,InnoDB表能够自动从灾难中恢复;

             4.外键约束。支持外键的存储引擎只有InnoDB;

              5.支持自动增加列AUTO_INCREMENT属性;

    一般来说,如果需要事务支持,并且有较高的并发读取频率,InnoDB是很不错的选择。


     MyISAM表

    MyISAM是独立于操作系统的,每当我们建立一个MyISAM引擎的表时,就会在磁盘上建立三个文件,文件名就是表名称。例如,我建立了一个MyISAM引擎的tb_Demo表,那么就会生成以下三个文件:

            1.tb_demo.frm存储表定义;

            2.tb_demo.MYD存储表数据;

            3.tb_demo.MYI存储表索引。

    MyISAM表无法处理事务,这就意味着有事务处理需求的表,不能用MyISAM存储引擎。MyISAM存储引擎特别适合以下几种情况下使用:

             1.查询密集型表。MyISAM存储引擎在筛选大量数据时非常快,是它最突出的优点;

             2.插入密集型表。MyISAM的并发插入特性允许同时选择、插入数据。例如:MyISAM存储引擎非常适合管理邮件或Web服务器日志数据。

    选择建议:

    1.MyISAM:如果应用是以读操作或者和插入操作为主,只有很少的更新和删除操作,并对事务的完整性和并发要求不是很高,可以选择,比如Web和数据仓库;

    2.InnoDB:用于事务处理的应用,支持外键。对于类型计费系统或者财务系统等对数据准确性较高的可以使用InnoDB。

    相关文章

      网友评论

        本文标题:Mysql 存储引擎(表类型)有哪些?

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