数据库索引及优化笔记

数据库索引及优化笔记

月光魔力鸭

阅读 231 喜欢 0 数据库索引设计 索引优化

内存优化

key_buffer_size

一般的MyISAM 数据库建议至少1/4的可用内存分配给 key_buffer_size

key_buffer_size = 4G
-- 临时设置,单位字节
set global key_buffer_size=1073741824

是否合理计算公式:

1 - ((key_blocks_unused * key_cache_block_size) / key_buffer_size ) 

使用率在80%左右比较合适。

innodb_buffer_pool_size

在专有数据库服务器上,可以将80%的物理内存分配给他。 mysql 8增加了一个自动分配内存的参数 innodb_dedicated_server ,如果当前服务器只有一个实例,并设置为了1 。mysql会根据物理机自动分配,规则如下:

# 物理内存小于1GB
innodb_buffer_pool_size=128MB
innodb_log_file_size=48MB
innodb_flush_method=O_DIRECT_NO_FSYNC

# 物理内存为 1GB ~ 4GB
innodb_buffer_pool_size=物理内存*0.5
innodb_log_file_size=128MB
innodb_flush_method=O_DIRECT_NO_FSYNC

# 物理内存 大于 4GB
innodb_buffer_pool_size=物理内存*0.75
innodb_log_file_size=1024MB
innodb_flush_method=O_DIRECT_NO_FSYNC

innodb_log_buffer_size

如果存在大量的茶润、更新操作,可以增大 innodb_log_buffer_size 来减少日志写磁盘操作。 默认16MB 。 需要关闭实例,清掉日志后再设置??这部分需要仔细查阅。

max_connections 提高并发连接

thread_cache_size

加快连接数据库的速度,控制mysql缓存客户服务现成的数量。

计算 threads_created/connections ,如果越接近1 ,则命中率越低,需要增加该值。

转载请注明出处: https://chrunlee.cn/article/db-index-prefect-note.html


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
简单记录下自己在部署starrtc的过程,防止隔了好久后重来掉坑。
最近在做在线阅卷相关的功能,根据一些常见的场景进行一些功能和业务分割理解,便于后续实现对应的功能。
简单记录下openssl 编译x64 以及在visual studio 中附加openssl库的过程,过程很简单,不过不是我的专业,所以比较耗时.. 很多小细节的问题。
如果您由于各种各样的原因,不幸丢失了数据、想恢复数据,您在互联网上搜索解决办法,会发现,DiskGenius这款软件是排名第一的解决方案
好久配置了,最近重新安装了一回,有忘了.. 果然还是得记录下来啊,起码以后不用到处找了对吧。
chrome css 下的 media=print 下的调试小技巧
最近在找一些资源,绘本啊 故事啊之类的,想到肯定有很多人分享到了网盘,但是去哪里找呢?