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)

时间: 2024-10-13 02:14:39

MYSQL使用内存计算的相关文章

mysql大内存高性能优化方案

mysql优化是一个相对来说比较重要的事情了,特别像对mysql读写比较多的网站就显得非常重要了,下面我们来介绍mysql大内存高性能优化方案 8G内存下MySQL的优化 按照下面的设置试试看:key_buffer = 3840Mmax_allowed_packet = 16Mtable_cache = 1024sort_buffer_size = 32Mread_buffer_size = 32Mread_rnd_buffer_size = 32Mmyisam_sort_buffer_size

MySQL将内存用在了哪里

本片文章参考官网讲述MySQL是如何分配内部内存,同时涉及到如何合适设的置内存分配以及如何监控内存的使用情况 官方文档 MySQL在启动时默认被分配给512MB RAM,可以通过设置相关内存参数对其进行设置,下面时MySQL使用内存的地方 1.InnoDB buffer pool 用于缓存表数据.索引及其他的一些辅助缓冲池,为了高效进行缓存管理,buffer pool 应用多种LRU(least recently used)算法,将相邻的page串成链,管理冷热数据 innodb_buffer_

内存计算

如果说云计算这个新瓶装的是虚拟化+ SOA/网格计算+SaaS(软件即服务)的老酒,那么内存计算则重点是释放了计算这一部分的能量. 但是对内存计算经常有一些误解: 1.大容量内存很贵 2. 内存计算不会持久化:实际上几乎所有的内存计算中间件都提供多种内存备份.持久存储备份以及基于磁盘的swap空间溢出的策略. 3.内存计算要取代数据仓库:内存计算的目的是要改善那些需要OLTP和OLAP混合处理的可操作数据集(Operational Dataset)的计算,而非历史数据集(Historical d

C++ sizeof的内存计算(1)

文章来自NoAlGo博客原创:C++ sizeof的内存计算(1) 内存控制是程序设计过程中非常关键的一环,C/C++中使用sizeof计算数据占用的内存大小是一个常见的手段,但是这个问题涉及到很多基础的编程细节,能够很好地反映一个程序员的基本功,成为了笔试面试常见的问题之一.这里总结了一些常见的问题,鉴于篇幅问题,分成两部分进行,这里主要介绍比较基础的第一部分. C++ sizeof的内存计算(1) C++ sizeof的内存计算(2) 一 sizeof定义 在C++中sizeof的使用方法看

C++ sizeof的内存计算(2)

文章来自NoAlGo博客原创 :C++ sizeof的内存计算(2) 内存控制是程序设计过程中非常关键的一环,C/C++中使用sizeof计算数据占用的内存大小是一个常见的手段,但是这个问题涉及到很多基础的编程细节,能够很好地反映一个程序员的基本功,成为了笔试面试常见的问题之一.这里总结了一些常见的问题,鉴于篇幅问题,分成两部分进行,这里主要介绍稍微进阶的第二部分. C++ sizeof的内存计算(1) C++ sizeof的内存计算(2) 三 复合类型 对于基本的数据类型,如char.int.

zw版_Halcon图像数据交换和全内存计算.TXT

Halcon由于效率和其他原因,内部图像采用了很多自有格式,提高运行速度,但在数据交换方面非常麻烦. 特别是基于com.net控件模式的二次开发,无论是c,vb,还是delphi,目前都没有一种理想的解决方案. 目前,一般采用的以下两种方式进行转换: hobject桥接模式,内存拷贝,通道分离 外部硬盘文件交换 hobject桥接模式,参见:zw版[转发·台湾nvp系列Delphi例程]HALCON HImage与Bitmap格式转换 http://www.cnblogs.com/ziwang/

“非易失性内存”嫁接“内存计算”——高速安全的大数据时代来临

“非易失性内存”嫁接“内存计算” ——高速安全的大数据时代来临 题记 数据库奠基人Jim Gray:“磁带已经死了,磁盘已经落伍,闪存成为存储,内存才是王道”.“不管磁盘是否消融,闪存都是将来的一个趋势.” 石油一直直接影响着世累经济的发展速度和发展水平,现在,信息将发挥同样的作用.<经济学人>表示:“数据和信息日益成为商业的新能源,是一种与资本.劳动力并列的新经济元素”. 数据保护 大数据时代的机遇和挑战 大数据“风华正茂” 大数据时代,每两天的数据量就达到2ZB,相当于20世纪前人类文明所

MySQL中内存分为全局内存和线程内存

首先我们来看一个公式,MySQL中内存分为全局内存和线程内存两大部分(其实并不全部,只是影响比较大的 部分): 复制代码 代码如下: per_thread_buffers=(read_buffer_size+read_rnd_buffer_size+sort_buffer_size+thread_stack+join_buffer_size+binlog_cache_size+tmp_table_size)*max_connectionsglobal_buffers=innodb_buffer_

这些组件分别处理Spark Core提供内存计算框架

Spark不仅支持Scala编写应用程序,而且支持Java和Python等语言进行编写,特别是Scala是一种高效.可拓展的语言,能够用简洁的代码处理较为复杂的处理工作. l通用性强 Spark生态圈即BDAS(伯克利数据分析栈)包含了Spark Core.Spark SQL.Spark Streaming.MLLib和GraphX等组件,这些组件分别处理Spark Core提供内存计算框架.SparkStreaming的实时处理应用.Spark SQL的即席查询.MLlib或MLbase的机器