多少MySQLread_buffer_size设置是否合适
key_buffer_size +(read_buffer_size + sort_buffer_size)* max_connections = 458624 Kread_buffer_size:它是MySQL的大小读入缓冲区,顺序表的扫描请求将分配一个读入缓冲,MySQL会为它分配一个内存缓冲区,read_buffer_size变量控制这个缓冲区的大小。如果顺序扫描请求表频繁,你认为这种频繁的扫描速度太慢,你可以通过增加变量的值和内存缓冲区的大小增加的性能。
以下是16G内存的设置
read_buffer_size = 1m
个人机32G,和一般的数据库是用来存储数据的,所以它是在MySQL中很少使用的所以我将它设置为2m或3m
手机在线更新系统的MySQL数据库服务器的参数优化mycnf,16G内存的8核CPU
业务场景:后台支持手机在线更新系统,数据库服务器内存16G,8核心,戴尔PC服务器。
关于QPS:200
一分钟1分,一分钟50分钟。
sort_buffer_size = 32M算是大的,8m可以
read_buffer_size = 32M算是大的,8m可以
read_rnd_buffer_size = 16M大,8m可以
table_open_cache = 512
它很小,建议改为2048。
max_allowed_packet = 5m
它很小。建议改为16M
tmp_table_size = 64m
它很小。建议改成2G。
innodb_buffer_pool_size = 3000m
小,改为60%到80%的DB服务器的总内存
innodb_additional_mem_pool_size = 20m小,变化至128M
为什么join_buffer_size没有看到这个参数我们必须设定价值。join_buffer_size = 8m必须加。这与联接表相关。这是非常重要的。