mysql存储引擎

2018-06-18 00:07:09来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

1、什么是存储引擎?

 关系数据库是用于存储和组织信息的数据结构,可以将表理解为由行和列组成的表格,类似于excel的电子表格的形式。有的表简单,有的表复杂,有的表根本不用来存储任何长期的数据,有的表读取时非常快,但是插入数据时却很差。而我们在实际开发过程中,就可能需要各种的表,不同的表,就意味着存储不同类型的数据,数据处理上也会存在着差异。对于mysql来说,它提供了很多类型的存储引擎,我们可以根据数据处理的需求,选择不同的存储引擎,从而最大限度的利用Mysql强大的功能。

在mysql客户端中,使用以下命令可以查看Mysql支持的引擎。

SHOW ENGINES ;

2、mysql存储引擎的总结

MyISAM:当我们建立一个MyISAM引擎的表时,就会在本地磁盘上建立三个文件,文件名就是表名。例如,我建立一个MyISAM引擎的tb_Demo表,那么就会生成以下三个文件:

1、tb_Demo.frm,存储表定义

2、tb_Demo.MYD,存储数据

3、Tb_Demo.MYI,存储索引

 

MyISAM表无法处理事务,这就意味着有事务处理需求的表,不能使用MyISAM存储引擎。

 

MyISAM存储引擎特别适合在以下几种情况下使用:

1、选择密集型的表:MyIASM存储引擎在筛选大量数据时非常迅速,这是它最突出的有点。

2、插入密集型的表:MyISAM的并发插入特性允许同时选择和插入数据。例如:MyISAM存储引擎很适合管理右键或web服务器日志数据。

 

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

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

2、事务:InnoDB存储引擎是支持事务的标准MySQL存储引擎

3、自动灾难恢复:与其他存储引擎不同,InnoDB表能够自动从灾难中恢复

4、外键约束:MySQL支持外键的存储引擎只有InnoDB

5、支持自动更加列AUTO_INCREMENT属性

 

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

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:关于日常使用Azure MySQL中遇到的连接问题以及排查方法分享

下一篇:MySQL学习笔记13分组复制相关概念