MYSQL入门学习之二十六:MySQL存储引擎简介 之 MyISAM


       MyISAM 是MySQL 最早的ISAM 存储引擎的升级版本,也是MySQL 默认的存储引擎。
1、MyISAM 存储引擎的表在数据库中,每一个表都被存放为三个以表名命名的物理文件。每个表都有且仅有这样三个文件做为MyISAM 存储类型的表的存储。
        (1)、.frm 文件:存放表结构定义信息
        (2)、.MY文件D:存放表的数据
        (3)、.MYI文件:存放索引数据
        每个表都有且仅有这样三
        个文件做为MyISAM 存储类型的表的存储
2、MyISAM 支持以下三种类型的索引:
        (1)、B-Tree 索引
        所有的索引节点都按照balance tree 的数据结构来存储,所有的索引数据节点都在叶节点。
        (2)、R-Tree 索引
        主要设计用于为存储空间和多维数据的字段做索引。
        (3)、Full-text 索引
        即全文索引,存储结构也是b-tree。主要是为了解决在需要用like 查询的低效问题。
        MyISAM 的B-Tree 索引有一个较大的限制,那就是参与一个索引的所有字段的长度之和不能超过1000 字节。
3、MyISAM表的存放格式
        (1)、静态(FIXED)固定长度
        如果表中没有任何可变长度的字段,则为FIXED 格式。
        (2)、动态(DYNAMIC)可变长度
        只要表中有可变长度类型的字段存在,那么该表就肯定是DYNAMIC 格式的。
        (3)、压缩(COMPRESSED)格式
        在创建表的时候通过ROW_FORMAT 来指定{COMPRESSED | DEFAULT},也可以通过myisampack 工具来进行压缩,默认是不压缩的。
        MyISAM 存储引擎的某个表文件出错之后,仅影响到该表,而不会影响到其他表,更不会影响到其他的数据库。
        如果数据库正在运行过程中发现某个MyISAM 表出现问题了,则可以在线通过check table 命令来尝试校验,并可以通过repair table 命令来尝试修复。
        在数据库关闭状态下,也可以通过myisamchk 工具来对数据库中某个(或某些)表进行检测或者修复。
        不过强烈建议不到万不得已不要轻易对表进行修复操作,修复之前尽量做好可能的备份工作,以免带来不必要的后果。
        
参考:《MySQL性能调优与架构设计》
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值