mysql之innodb_buffer_pool
1>.mysqld重启之后,innodb_buffer_pool几乎是空的,没有任何的缓存数据。随着sql语句的执行,table中的数据以及index 逐渐被填充到buffer pool里面,之后的查询语句只需要在内存中操作(理想状态下),大幅度提升了mysql的性能。 这个逐渐填充的过程可能需要1-2个小时,甚至更久也说不准。在此过程中,mysql性能一般,因为需要大量的硬盘读操作
2>.innodb在内存中维护一个缓冲池用来缓存数据和索引,缓存池管理一个数据块列表,该列表又分为2个字列,一个子列存放new blocks,另一个子列存放old blocks。old blocks默认占整个列大小的3/8(可通过innodb_old_blocks_pct改变默认值,该值范围在5-95之间,这是一个百分比),其余大小为new blocks占用
手工导出的话,可以用这个命令:
mysql> SET innodb_buffer_pool_dump_now=ON;
然后mysql会在innodb的数据目录中生成一个文件:ib_buffer_pool
关闭mysql的时候,自动导出:
mysql> SET innodb_buffer_pool_dump_at_shutdown=ON;
在my.cnf中加上 innodb_buffer_pool_load_at_startup=ON 就会在mysqld启动之后,重新加载buffer pool。
3>.innodb_buffer_pool_instances:主要用于将innodb_buffer_pool进行划分,通过划分innodb_buffer_pool为多个实例,可以提高并发能力,并且减少了不同线程读写造成的缓冲页;但是不必设置过大,该值对mysql性能提升不大,有待测试;
题外话:
mysql为缓存分配内存:操作系统为myisam的数据提供缓存;myisam键缓存;innodb缓存池;查询缓存
mysql之innodb_buffer_pool的更多相关文章
- MySQL内存调优
原文链接: MySQL Memory Allocation -- by Rick James原文日期: Created 2010; Refreshed Oct, 2012, Jan, 2014 翻译人 ...
- 21.Mysql Server优化
21.优化Mysql Server21.1 Mysql体系结构概览Mysql由Mysql Server层和存储引擎层组成.Mysql实例由一组后台进程.一写内存块和若干服务线程组成.Mysql后台进程 ...
- 5.6 太多分区引起OOM
一个月之前,Scott和同事们发现公司有一个MySQL MHA集群的master(假设master机器名为hostA)每隔一周左右就会挂一次(指MySQL挂掉),在几周内,MHA来回切了好几次. 按照 ...
- mongodb 系列 ~ mongo的两种引擎介绍对比
一 简介 两种引擎方式的对比二 对比与说明 1 版本支持 MMAP引擎 3.2版本之前,默认引擎 WT 引擎 3.2版本之后,默认引擎 2 并发性能(核心) M ...
- Mysql缓存中innodb_buffer_pool与Qcache的区别
innodb buffer pool和Qcache的缓存区别? 1.Qcacche缓存的是SQL语句及对应的结果集,缓存在内存,最简单的情况是SQL一直不重复,那Qcache的命令率肯定是0; 2.b ...
- <转>MySQL性能调优的10个方法
文章原地址:http://mp.weixin.qq.com/s/oRXJRz_Y5drmIrcbxSKOcw 1. 选择合适的存储引擎: InnoDB 除非你的数据表使用来做只读或者全文检索 (相信现 ...
- 【转】mysql对large page的支持
昨天同事问我关于大页内存的事,我也只是有个模糊的概念,从别的博客转过来的,先记录下 在 Linux 操作系统上运行内存需求量较大的应用程序时,由于其采用的默认页面大小为 4KB,因而将会产生较多 TL ...
- Mysql监控、优化
一.查询语句的生命周期 1.MYSQL服务器监听3306端口 2.验证访问用户 3.创建MySQL线程 4.检查内存(Qcache),当查询命中缓存,MYSQL立刻返回结果,跳过解析.优化.执行阶段. ...
- 初识 MySQL 5.6 新功能、参数
摘要: 继上一篇的文章 初识 MySQL 5.5 新功能.参数 之后,现在MySQL5.6 针对 MySQL5.5 各个方面又提升了很多,特别在性能和一些新参数上面,现在看看大致提升了哪些方面(后续不 ...
随机推荐
- 语艺杂谈1 – MAP赋值与插入
MAP赋值和插入,对于相同ID的处理方式不同,前者为替换 后者为插入失败 #include <map> #include <string> #include <iostr ...
- 如何解决php 生成验证码图片不显示问题
最近遇到一个问题,就是验证码在别人的电脑上可以显示,但是我自己的电脑上去不能.原因找了好久,哈哈,终于找到了!现在给大家分享一下: 程序: <?php $w = 80; //设置图片宽和高 $h ...
- linux 输入java 出现中文乱码
http://jingyan.baidu.com/article/ab69b270de8b4f2ca7189f1d.html 1.查看当前linux的编码 没设置之前是:zh_CN.UTF_8 输入 ...
- stage划分
整个stage的划分会根据最后触发的action进行倒推,如果碰到宽依赖就将当前范围内的rdd划分为一个stage,直到所有的RDD遍历完为止.
- Flume协作框架
1.概述 ->flume的三大功能 collecting, aggregating, and moving 收集 聚合 移动 2.框图 3.架构特点 ->on streaming data ...
- Nodejs电影建站开发实例(下)
作为一个真正的网站,不能没有数据的支持,下面使用的数据库为mongodb,电影可能有的数据:电影名称.导演.国家.语言.上映时间.图片.简介.视频 4.使用路由 app.js var express ...
- 算法训练 Hanoi问题
算法训练 Hanoi问题 时间限制:1.0s 内存限制:512.0MB 问题描述 如果将课本上的Hanoi塔问题稍做修改:仍然是给定N只盘子,3根柱子,但是允许每次最多移动相邻的 ...
- ArcGIS三大文件格式解析
原文:ArcGIS三大文件格式解析 Shape数据 Shapefile是ArcView GIS 3.x的原生数据格式,属于简单要素类,用点.线.多边形存储要素的形状,却不能存储拓扑关系,具有简单.快速 ...
- sqlserver 四舍五入(转)
select cast(round(12.5,2) as numeric(5,2)) 解释: round()函数,是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入 ...
- 查看sqlserver版本及其补丁
select @@version select serverproperty('productlevel')