数据库索引及优化笔记

数据库索引及优化笔记

月光魔力鸭

阅读 255 喜欢 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


感谢支持!

赞赏支持
提交评论
评论信息 (请文明评论)
暂无评论,快来快来写想法...
推荐
2021年度支付宝扫码赚赏金活动又又又开始啦...
作为一名前端开发人员来说,有一个比较好的工具会提高开发效率,不管是调试还是书写,这里推荐一个快速书写的利器:Emmet
最近发现有部分同学在网站上面无法支付,限于无法知道他们的具体情况,这里简单做几个猜测。
孕早期饮食注意事项,这里先记录下,用于备忘。
前段时间弄了下微信的dat图片的解码,后续有同学问数据库的解码怎么弄.. 当然,后边陆陆续续的看了下,加上住院乱七八糟的事情,一直没处理,最近几天处理了下,发现微信数据库的数据格式是真的麻烦...
如果有台能翻墙的服务器,那么我们就可以自己做一个代理,这样本地就可以科学上网啦..