存储引擎

作者: 曹奉先 | 来源:发表于2018-01-16 14:32 被阅读0次

    存储引擎是在创建表的时候指定的,当没有指定的时候有默认值,默认值随mysql版本变化。mysql有20多个存储引擎,常用的也就几个。InnoDB、MyISAM、MEMORY、ARCHIVE

InnoDB

    mysql5.5版本以后,InnoDB是默认的存储引擎。

优点

    灾难恢复性好、支持4种级别的事务、使用行锁、实现缓冲管理、支持外键、支持热备份。

MyISAM

    MyISAM是mysql5.0/5.1版本的默认存储引擎

特性

    表级锁,并发性差。

    无事务支持

    无外键支持

    只缓冲的索引没有缓存数据

等等等等

如何选择存储引擎

    是否需要事务

    是否为高并发,InnoDB实现行锁(锁粒度小),MyISAM实现表锁(锁粒度大),所以InnoDB并发相对高

    索引

    是否需要外键

    高效缓存数据

    是否需要热备份

    ........

    从上面的特性上看,一般直接所有的都使用InnoDB就好了。当遇到了读瓶颈要做读写分离的时候,可以配合MyISAM一起使用;或者是业务不是要事务不需要外键不需要高并发不需要热备份等等的时候,可以用MyISAM。其他情况下直接使用InnoDB就没有多大问题。

tip

    虽说mysql5.5版本以后默认的存储引擎是InnoDB,但使用某些第三方mysql客户端(像navcat)创建表的时候,默认指定的存储引擎就是MyISAM。楼主就吃过这个亏

相关文章

  • MySQL存储引擎、事务日志并发访问以及隔离级别

    MySQL存储引擎 MySQL是插件式存储存储引擎,支持多种存储引擎常见的存储引擎有:MyISAM, Aria, ...

  • 「Mysql索引原理(一)」1.存储引擎简介

    存储引擎 0. 前言1. 存储引擎查看2. InnoDB存储引擎特性存储InnoDB历史3. MyISAM存储引擎...

  • MySQL数据库中存储引擎和数据类型

    一.什么是存储引擎 二.操作存储引擎 查看存储引擎 1.查看mysql支持的存储引擎 2.看你的mysql当前默认...

  • 浅谈InnoDB存储引擎中的锁

    InnoDB存储引擎是MySQL数据库默认的事务型存储引擎,也是使用比较多的存储引擎。InnoDB存储引擎不紧支持...

  • MySQL常用配置查询

    版本查询 存储引擎查询 当前支持的存储引擎 查看当前默认存储引擎 查看表所使用的存储引擎 查看用户信息 查看当前登...

  • 分布式基础-存储引擎

    题目和文章内容有点不太符合,这里存储引擎是指单机存储引擎。对于分布式存储系统来说,存储引擎是必须的。存储引擎决定了...

  • MySQL进阶——存储引擎

    上篇文章我们学习了MySQL基础——事务,这篇文章学习MySQL进阶——存储引擎。 存储引擎 存储引擎就是存储数据...

  • Mongodb存储引擎

    插件式存储引擎API 插件式存储引擎API的引入为处理更多不同类型的业务提供了无限可能,内存存储引擎、事务存储引擎...

  • Error 1701:Specified key was too

    出现以上问题;一 、先查看导出库与导入存储引擎 修改存储引擎语句 设置存储引擎一致即可导入;若不想修改存储引擎,则...

  • 简单了解InnoDB底层原理

    存储引擎 很多文章都是直接开始介绍有哪些存储引擎,并没有去介绍存储引擎本身。那么究竟什么是存储引擎?不知道大家有没...

网友评论

    本文标题:存储引擎

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