mysql之全局缓存和线程缓存

全局缓存:

key_buffer_size:决定索引处理的速度,尤其是索引读的速度。默认值是16M。该参数只对MyISAM表起作用。

innodb_buffer_pool_size: InnoDB使用该参数指定大小的内存来缓冲数据和索引,这个是Innodb引擎中影响性能最大的参数。

innodb_additional_mem_pool_size: 指定InnoDB用来存储数据字典和其他内部数据结构的内存池大小。缺省值是8M。通常不用太大,够用即可,应该与表结构的复杂度有关系。如果不够用,mysql会在错误日志中写入一条警告信息。

innodb_log_buffer_size: 指定Innodb用来存储日志数据的缓存大小,相当于oracle中的log buffer

query_cache_size: 是mysql的查询缓存大小。大多数情况下禁用该参数。

 

线程缓存:

每个连接到mysql服务器的线程都需要有自己的缓存。大概需要立刻分配256K,甚至在线程空闲时,他们使用默认的线程堆栈,网络缓存等。事务开始之后,则需要增加更多的空间。运行较小的查询可能仅给指定的线程增加少量的内存消耗,然而如果对数据表做复杂的操作例如扫描、排序或者需要临时表,则需要分配read_buffer_size、sort_buffer_size、read_rnd_buffer_size、tmp_table_size大小的内存空间。不过他们只是在需要的时候才分配,并且在那些操作完成之后便释放。

read_buffer_size: 是mysql读入缓冲区大小。对表进行顺序扫描的请求将分配一个读入缓冲区,mysql会为它分配一段内存缓冲区。该参数用来控制读入缓冲区的大小。如果对表的顺序扫描请求非常的频繁,并且认为频繁扫描进行的太慢,可以通过增加该变量值以及内存缓冲区大小来提高性能

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值