MyISAM特色:
缓存
B-tree
并发
全文检索索引oracle
索引缓存ide
数据压缩工具
复制性能
查询缓存加密
三维地理数据类型spa
地理数据索引索引
数据加密requests
统计信息
备份、基于时间点的恢复
MyISAM的三种存储格式
1,FIXED 也称为静态格式存储:保存的每一列的数据占用长度都固定。查询速度最快
2,DYNAMIC 也称为动态格式存储:可变长数据列会根据保存数据实际长度来存储数据。节省空间,性能相对会差一些
3,COMPRESSED也称为压缩格式存储:用myisampack命令来建立,myisamchk命令来解压缩。只读。节省空间,以及读取速度很是快。
MyISAM工具
1,myisamchk -ei 相似oracle/db2的runstats
2,myisamchk -ed 相似oracle/db2的reorgchk
3,myisamchk -r 相似oracle/db2的相似reorg
MyISAM使用场景
1,设置合适的索引
2,因为MyISAM是使用的表级锁,因此在写入的时候须要调整写入顺序,尽可能作到分清楚重要次要的秩序。
3,尽可能减小插入语句执行的次数,能合并执行的合并执行。
4,对于查询语句,尽可能分开查询,串行方式运行。减小并发数。
5,MyISAM会缓存整个表的行数,因此对于全表count很快。可是条件语句count会走全表扫描,会很慢,尽可能避免。
MyISAM key相关变量
1,key_buffer_size ,key_buffer_size是索引块缓冲区的大小。共享缓存。
2,key_cache_age_threshold ,控制缓存KEY所在buffer中热区的阈值。阈值越高保持的时间越长
3,key_cache_block_size ,键值缓存内块的字节大小
4,key_cache_division_limit ,key缓存中非热区百分比
myisam key相关状态变量1,Key_blocks_not_flushed ,key内数据已经更改,但还没写入磁盘的次数2,Key_blocks_unused ,未使用的key块数量3,Key_blocks_used ,使用的key块数量4,Key_read_requests ,key数据块的请求数5,Key_reads ,实际从硬盘读取key数据块并写入缓存的次数6,Key_write_requests ,key数据块写入硬盘的请求数7,Key_writes ,实际向硬盘写入key数据块的IO次数