我理解的myisam引擎之四 myisam-block-size、key_cache_block_size、key_block_size

本文详细介绍了MySQL MyISAM引擎的参数myisam-block-size、key_cache_block_size和key_block_size的含义及区别。这些参数影响着MYI文件的块大小和内存中索引块的存储。myisam-block-size是启动选项,不可动态修改,而key_cache_block_size是系统变量,可以动态调整。通过测试对比,当myisam-block-size与操作系统文件块大小相同时,能获得更好的性能和磁盘I/O表现。
摘要由CSDN通过智能技术生成

先简单说下myisam-block-size、key_cache_block_size、key_block_size这几个参数的含义和区别,如下是摘抄自我的另一篇文章我理解的myisam引擎之一 myisam表特征
myisam-block-size:看到这里的中划线了吗?对,这是一个启动选项,只能在启动时设置并且不能动态修改,或者设置在配置文件中,或者在启动命令行上。围绕这个参数应该是一个系统变量还是一个启动选项产生了一些争议。https://bugs.mysql.com/bug.php?id=34363  这个参数的意在设置MYI文件的block大小。默认值为1k,最大16k,最小1K。通常来说应该与操作系统block相同或者倍数关系,才能取得较好性能,如果小于系统block大小,就存在写读的问题:假如系统block大小4k,这里使用默认值1k,那么如果要写入一个1k大小的block,需要先将整个4k读出来,更新,然后再写进去。如果都是4k的话,就直接写。修改myisam-block-size不影响已存在的MYI文件。如果要修改已存在的MYI,需要重建索引。意义接近的有另外两个参数key_cache_block_size、key_block_size。key_cache_block_size是系统变量,可在参数文件中设置,也可动态修改。用于设置内存中存放索引的块大小,最大值16k,最小值512字节,默认1k;key_block_size作为参数项出现在create、alter ddl语句中,与myisam-block-size意义相同,都是控制MYI文件块大小。区别在于如果修改myisam-block-si

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值