码迷,mamicode.com
首页 > 数据库 > 详细

MYSQL使用内存计算

时间:2016-01-29 03:41:23      阅读:200      评论:0      收藏:0      [点我收藏+]

标签:mysql内存占用计算

MySQL内存占用计算: global buffer+all thread buffer

global buffer=

innodb_buffer_pool_size 缓存表数据和索引数据,加速查询,并且使查询结果集保存在内以供重用,一般设置到主机内存的70%以下

+innodb_additional_mem_pool_size 存放数据字典信息以及一些内部数据结构,如果数据库的对象过多的话,该值可能需要调整,一般不做调整

+innodb_log_buffer_size 事务日志所使用的缓冲区,当满足innodb_flush_log_trx_commit设置的条件时,会将日志刷新到磁盘中。

+key_buffer_size myisam存储引擎所需要分配的内存大小,默认不调整,因为一般使用Innodb存储引擎

+query_cache_size 查询缓存,高并发写类型库建议关闭

+table_open_cache 高速表缓存数目。开始可先设置一个稍微大的值,如根据max_connections*n,n为一个连接中可能打开的表的数据量。后期等运行一段时间后,可根据Open_tables / Opened_tables >= 0.85,Open_tables / table_cache <= 0.95来进行调整。

+table_definition_cache 存放表的定义信息.frm

+thread_cache_size 空闲线程缓存池。如果有空闲线程,那么当建立新链接的时候会很快进行分配


all thread buffer=

max_threads*(

read_buffer_size mysql读入缓冲区大小。MyISAM引擎顺序扫描会分配一段内存。另外对于所有的引擎的以下操作会使用到该read_buffer_size:使用Order by进行数据行排序,bulk insert into partitions,缓存嵌套查询结果集。默认1MB,值必须是4KB的整数倍,最小8KB,最大2GB,不要设置的过大,并发高时占用内存过高。

+read_rnd_buffer_size

+sort_buffer_size

+join_buffer_size

+binlog_cache_size

+tmp_table_size

+thread_stack

+net_buffer_length

+bulk_insert_buffer_size)


MYSQL使用内存计算

标签:mysql内存占用计算

原文地址:http://gaoquan.blog.51cto.com/4503718/1739687

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!