MySQL进阶之体系结构知识点

介绍

这篇文章将为大家详细讲解有关MySQL进阶之体系结构知识点,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

<强> 5 MySQL体系结构

 MySQL进阶之体系结构知识点“> <br/>下面我们选一些比较常用的存储引擎进行简单的说明,MySQL所使用的存储引擎会对数据库的性能产生直接的影响,还希望各位能仔细的了解存储引擎的一些特点,完了之后才使用存储引擎。</p> <p> <强> 5.1 MyISAM </强> </p> <p> MyISAM在MySQL5.5之前版本是默认的存储引擎。由于这个原因,还有很多服务器在使用MyISAM这个存储引擎。同时,MyISAM目前是很多系统表,临时表所使用的存储引擎,这里说的临时表不是我们通过<代码> create table </代码>创建出来的表,是指在排序、分组等操作中,当数量超过一定的大小之后,有查询优化器建立的临时表。<br/> MyISAM存储引擎是由MYD见这种情况称之为和多年并组成,MYD是数据文件的扩展名,MYI是索引文件的扩展名,这个存储引擎是将表存储在以这两个为扩展名的数据文件和索引文件中。</p> <p>特性:</p> <ul类= <李>

并发性与锁级别
MyISAM使用的是表级锁,并不是行级锁,这也就意味着对表中的数据进行修改时,需要对整个表进行加锁,而在对表的读取时也对所有的表加共享锁,从这里我们可以看的到,使用MyISAM做引擎的表读取和写入两种操作是互斥的。由此可以看到MyISAM对于读写的并发操作并不会很好。如果只对于只读取操作的话,就并发性而言,性能也还不错,因为共享锁不会阻塞共享锁。

<李>

表损坏修复
MyISAM支持由于任意意外关闭而损坏的MyISAM表,进行检查和修复操作,但是这里说的修复并不是数据的恢复,因为MyISAM并不是一种事务性的存储引擎,所以它不能进行事务恢复所需要的相关日志,所以要注意MyISAM表的恢复可能会造成数据的丢失。
我们可以通过<代码>检查表的表> 维修表的表> <李>

MyISAM表支持的索引类型
MyISAM支持全文索引,并且在mysql5.7版本之前唯一原生就支持全文索引的官方存储引擎。

<李>

MyISAM表支持数据压缩
如果MyISAM表示一张很大的只读表,也就是在表创建完导入数据后,就不会对表进行任何修改操作了,那我们就可以对表进行压缩了,以减少磁盘I/o .我们可以使用<代码> myisampack 命令来对表进行压缩。压缩是对表独立进行压缩的,因此读取一行数据的时候,不必对整个表进行解压。

限制:

<李>

版本& lt;mysql5.0时默认表大小为4 g

<李>

如存储大表则要修改MAX_Rows和AVG_ROW_LENGTH

<李>

版本比;null

MySQL进阶之体系结构知识点