MySQL在不同内存下的资源分配

首先介绍一下各参数作用:

参数名称 参数作用
key_buffer_size 单位为MB,用于索引的缓冲区大小
query_cache_size 单位为MB,查询缓存,不开启请设为0
tmp_table_size 单位为MB,临时表缓存的大小
innodb_buffer_pool_size 单位为MB,Innodb缓冲区大小
innodb_log_buffer_size 单位为MB,Innodb日志缓冲区大小
sort_buffer_size KB乘以连接数,每个线程排序的缓冲的大小
read_buffer_size KB乘以连接数,读入缓冲区的大小
read_rnd_buffer_size KB乘以连接数,随机读取缓冲区的大小
join_buffer_size KB乘以连接数,关联表缓存的大小
thread_stack KB乘以连接数,每个线程的堆栈的大小
binlog_cache_size KB乘以连接数,二进制日志缓存的大小(4096的倍数)
thread_cache_size 线程池的大小
table_open_cache 表的缓存(最大别超过2048)
max_connections 最大的连接数

然后介绍一下不同内存的推荐阈值:

优化方案 1-2GB 2-4GB 4-8GB 8-16GB 16-32GB
key_buffer_size 128 268 384 512 1024
query_cache_size 0 0 0 0 0
tmp_table_size 64 384 512 1024 2048
innodb_buffer_pool_size 256 384 512 1024 4096
innodb_log_buffer_size 8 8 8 8 8
sort_buffer_size 768 768 1024 2048 4096
read_buffer_size 768 768 1024 2048 4096
read_rnd_buffer_size 512 512 768 1024 2048
join_buffer_size 1024 2048 2048 4096 8192
thread_stack 256 256 256 384 512
binlog_cache_size 64 64 128 192 256
thread_cache_size 64 96 128 192 256
table_open_cache 128 192 384 1024 2048
max_connections 100 200 300 400 500

最后虾咪提醒一下:query_cache_size为查询缓存,我习惯不启用,毕竟wordpress的查询语句实在惨不忍睹,这个对wordpress用户来说几乎无用。如果想开启也可以,这个没有范围,只要内存够用开多大都可行!

给TA打赏
共{{data.count}}人
人已打赏
点滴技术

升级MySQL5.7开发应该注意的几点

2018-7-10 11:16:01

点滴技术

内存占用率对服务器的影响

2018-7-14 20:39:53

    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索