mysql引擎有哪些mysql存储引擎类型有哪些

mysql引擎有哪些  时间:2021-07-15  阅读:()

mysql存储引擎类型有哪些

1、MyISAM 使用这个存储引擎,每个MyISAM在磁盘上存储成三个文件。

(1)frm文件:存储表的定义数据 (2)MYD文件:存放表具体记录的数据 (3)MYI文件:存储索引 frm和MYI可以存放在不同的目录下。

MYI文件用来存储索引,但仅保存记录所在页的指针,索引的结构是B+树结构。

下面这张图就是MYI文件保存的机制: 从这张图可以发现,这个存储引擎通过MYI的B+树结构来查找记录页,再根据记录页查找记录。

并且支持全文索引、B树索引和数据压缩。

支持数据的类型也有三种: (1)静态固定长度表 这种方式的优点在于存储速度非常快,容易发生缓存,而且表发生损坏后也容易修复。

缺点是占空间。

这也是默认的存储格式。

(2)动态可变长表 优点是节省空间,但是一旦出错恢复起来比较麻烦。

(3)压缩表 上面说到支持数据压缩,说明肯定也支持这个格式。

在数据文件发生错误时候,可以使用check table工具来检查,而且还可以使用repair table工具来恢复。

有一个重要的特点那就是不支持事务,但是这也意味着他的存储速度更快,如果你的读写操作允许有错误数据的话,只是追求速度,可以选择这个存储引擎。

2、InnoDB InnoDB是默认的数据库存储引擎,他的主要特点有: (1)可以通过自动增长列,方法是auto_increment。

(2)支持事务。

默认的事务隔离级别为可重复度,通过MVCC(并发版本控制)来实现的。

(3)使用的锁粒度为行级锁,可以支持更高的并发; (4)支持外键约束;外键约束其实降低了表的查询速度,但是增加了表之间的耦合度。

(5)配合一些热备工具可以支持在线热备份; (6)在InnoDB中存在着缓冲管理,通过缓冲池,将索引和数据全部缓存起来,加快查询的速度; (7)对于InnoDB类型的表,其数据的物理组织形式是聚簇表。

所有的数据按照主键来组织。

数据和索引放在一块,都位于B+数的叶子节点上; 当然InnoDB的存储表和索引也有下面两种形式: (1)使用共享表空间存储:所有的表和索引存放在同一个表空间中。

(2)使用多表空间存储:表结构放在frm文件,数据和索引放在IBD文件中。

分区表的话,每个分区对应单独的IBD文件,分区表的定义可以查看我的其他文章。

使用分区表的好处在于提升查询效率。

对于InnoDB来说,最大的特点在于支持事务。

但是这是以损失效率来换取的。

3、Memory 将数据存在内存,为了提高数据的访问速度,每一个表实际上和一个磁盘文件关联。

文件是frm。

(1)支持的数据类型有限制,比如:不支持TEXT和BLOB类型,对于字符串类型的数据,只支持固定长度的行,VARCHAR会被自动存储为CHAR类型; (2)支持的锁粒度为表级锁。

所以,在访问量比较大时,表级锁会成为MEMORY存储引擎的瓶颈; (3)由于数据是存放在内存中,一旦服务器出现故障,数据都会丢失; (4)查询的时候,如果有用到临时表,而且临时表中有BLOB,TEXT类型的字段,那么这个临时表就会转化为MyISAM类型的表,性能会急剧降低; (5)默认使用hash索引。

(6)如果一个内部表很大,会转化为磁盘表。

在这里只是给出3个常见的存储引擎。

使用哪一种引擎需要灵活选择,一个数据库中多个表可以使用不同引擎以满足各种性能和实际需求,使用合适的存储引擎,将会提高整个数据库的性能

HostNamaste$24 /年,美国独立日VPS优惠/1核1G/30GB/1Gbps不限流量/可选达拉斯和纽约机房/免费Windows系统/

HostNamaste是一家成立于2016年3月的印度IDC商家,目前有美国洛杉矶、达拉斯、杰克逊维尔、法国鲁贝、俄罗斯莫斯科、印度孟买、加拿大魁北克机房。其中洛杉矶是Quadranet也就是我们常说的QN机房(也有CC机房,可发工单让客服改机房);达拉斯是ColoCrossing也就是我们常说的CC机房;杰克逊维尔和法国鲁贝是OVH的高防机房。采用主流的OpenVZ和KVM架构,支持ipv6,免...

MOACK:韩国服务器/双E5-2450L/8GB内存/1T硬盘/10M不限流量,$59.00/月

Moack怎么样?Moack(蘑菇主机)是一家成立于2016年的商家,据说是国人和韩国合资开办的主机商家,目前主要销售独立服务器,机房位于韩国MOACK机房,网络接入了kt/lg/kinx三条线路,目前到中国大陆的速度非常好,国内Ping值平均在45MS左右,而且商家的套餐比较便宜,针对国人有很多活动。不过目前如果购买机器如需现场处理,由于COVID-19越来越严重,MOACK办公楼里的人也被感染...

香港云服务器 1核 256M 19.9元/月 Mineserver Ltd

Mineserver(ASN142586|UK CompanyNumber 1351696),已经成立一年半。主营香港日本机房的VPS、物理服务器业务。Telegram群组: @mineserver1 | Discord群组: https://discord.gg/MTB8ww9GEA7折循环优惠:JP30(JPCN2宣布产品可以使用)8折循环优惠:CMI20(仅1024M以上套餐可以使用)9折循...

mysql引擎有哪些为你推荐
元数据管理请问metadata是什么意思?linux修改文件名Linux中,怎样修改文件名?adversary英语match,是什么意思.?settimer如何使用SetTimer MFC 够详细settimervc++6.0 settimer函数是怎么用的啊,能给个例子在讲解一下行么电子日历墙上挂的电子日历不显示怎么维修李昊天李昊天这名字给多少分拓扑关系拓扑关系在GIS中的作用调度系统生产调度系统editplus破解版cool edit pro 2.1汉化破解版
美国服务器托管 域名城 日本私人vps 三级域名网站 泛域名绑定 locvps fastdomain 安云加速器 bluehost kdata webhostingpad Hello图床 godaddy域名转出 免费个人博客 免费smtp服务器 阿里云浏览器 帽子云 怎样建立邮箱 789电视网 电信主机 更多