资讯专栏INFORMATION COLUMN

MySQL性能管理及架构设计之MyISAM

xushaojieaaa / 617人阅读

摘要:优点优势在于占用空间小,处理速度快。缺点是缺点不支持事务处理的完整性和并发性组成数据文件的扩展名为索引文件的扩展名。它提供高速存储和检索,以及全文搜索能力。只读类应用插入不频繁,查询非常频繁空间类应用如和做很多的计算

哪有什么天生如此,只是我们天天坚持。 -------The best Zhiyuan

通过学习总结一下MySql中常用的存储引擎之MyISAM:

MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良。
优点:优势在于占用空间小,处理速度快。缺点是
缺点:不支持事务处理(transaction)的完整性和并发性

组成

.MYD
数据文件的扩展名为 (MYData)

.MYI (MYIndex)
索引文件的扩展名。

.frm
存储表定义(记录表结构的并不是myisam特有的)

特性

并发性和锁级别
只支持表级锁,用户在操作myisam表时,select,update,delete,insert语句都会给表自动加锁,如果加锁以后的表满足insert并发的情况下,可以在表的尾部插入新的数据。

损坏修复

查看表是否损坏CHECK TABLE t1;

修复表repair table t1;
如果单纯执行REPAIR TABLE没有起到什么效果,那么可以选择另外两个选项:

REPAIR TABLE EXTENDED,速度比REPAIR TABLE慢得多,但是可以修复99%的错误;

REPAIR TABLE USE_FRM,它会删除索引并利用table_name.frm文件中的描述重建索引,并通过table_name.MYD文件填充健对应的值。

支持的索引类型
支持全文索引(FULLTEXT)
前缀索引

支持数据压缩
Myisam引擎支持对表的压缩,压缩后的空间上比压缩前会减少60%-70%,但是压缩后的表是只读的
命令 myisampack + -f强制压缩

限制

版本 < MySql5.0 时默认表大小为4个G

如果存储大表 需要修改 `MAX_Rows` 和 `AVG_ROW_LENGTH`

版本 > MySql5.0 时默认支持为256TB (嗷嗷够用啊)

适用场景

非事务型应用
它提供高速存储和检索,以及全文搜索能力。如果应用中需要执行大量的SELECT查询,那么MyISAM是更好的选择。

只读类应用
插入不频繁,查询非常频繁

空间类应用
如GPRS和做很多count 的计算

Shi Zhiyuan is always the best

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/47264.html

相关文章

  • MySQL性能管理架构设计(二):数据库结构优化、高可用架构设计、数据库索引优化

    摘要:数据实体之间的逻辑关系,解决数据冗余和数据维护异常。判断标准使用,可以通过输出的列来判断,对于一个索引覆盖查询,显示为查询优化器在执行查询前会决定是否有索引覆盖查询。 上一篇:MySQL性能管理及架构设计(一):什么影响了数据库查询速度、什么影响了MySQL性能 一、数据库结构优化(非常重要) 1.1 数据库结构优化目的     1、减少数据冗余:(数据冗余是指在数据库中存在相同的数据...

    evin2016 评论0 收藏0
  • MySQL性能管理架构设计(一):什么影响了数据库查询速度、什么影响了MySQL性能

    摘要:重启,并重建系统表空间。性能优化顺序从上到下下一篇性能管理及架构设计二数据库结构优化高可用架构设计数据库索引优化参考教学视频实战性能管理及架构设计 一、什么影响了数据库查询速度 1.1 影响数据库查询速度的四个因素     showImg(https://segmentfault.com/img/bV5m06?w=427&h=196); 1.2 风险分析 QPS:Queries Pe...

    XiNGRZ 评论0 收藏0
  • 关于MySQL的知识点与面试常见问题都在这里

    摘要:串行最高的隔离级别,完全服从的隔离级别。但是这将严重影响程序的性能。此外,垂直分区可以简化表的结构,易于维护。 我自己总结的Java学习的一些知识点以及面试问题,目前已经开源,会一直完善下去,欢迎建议和指导欢迎Star: https://github.com/Snailclimb/Java_Guide 书籍推荐 《高性能MySQL : 第3版》 文字教程推荐 MySQL 教程(菜鸟教程...

    hss01248 评论0 收藏0
  • 关于MySQL的知识点与面试常见问题都在这里

    摘要:串行最高的隔离级别,完全服从的隔离级别。但是这将严重影响程序的性能。此外,垂直分区可以简化表的结构,易于维护。 我自己总结的Java学习的一些知识点以及面试问题,目前已经开源,会一直完善下去,欢迎建议和指导欢迎Star: https://github.com/Snailclimb/Java_Guide 书籍推荐 《高性能MySQL : 第3版》 文字教程推荐 MySQL 教程(菜鸟教程...

    BothEyes1993 评论0 收藏0
  • 关于MySQL的知识点与面试常见问题都在这里

    摘要:串行最高的隔离级别,完全服从的隔离级别。但是这将严重影响程序的性能。此外,垂直分区可以简化表的结构,易于维护。 我自己总结的Java学习的一些知识点以及面试问题,目前已经开源,会一直完善下去,欢迎建议和指导欢迎Star: https://github.com/Snailclimb/Java_Guide 书籍推荐 《高性能MySQL : 第3版》 文字教程推荐 MySQL 教程(菜鸟教程...

    newtrek 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<