mysql-5.7 innodb change buffer 详解
一、innodb change buffer 介绍:
1、innodb change buffer 是针对oltp场景下磁盘IO的一种优化(我也感觉这个不太像人话,但是它又非常的准确的说明
innodb change buffer 的功能)
二、innodb change buffer 原理:
对于insert ,update ,delete 操作一来要更新数据,二来要更新索引;如果要更新的索引页还没有在内存中,那么innodb
不会急于把索引页调入内存,更新,再写回磁盘;它会先把对索引的更新这一动作先记录到innodb buffer pool中一块
叫change buffer 的区域。那它什么时候写回呢? 目前来说有三种情况innodb会把change buffer 中的内容写入索引页
情况1: 要更新的索引页被调入内存
情况2: 服务器比较空闲
情况3: mysql 进入slow shutdown 的时候
三、innodb change buffer 可能会引起的问题:
前面我们说过innodb change buffer 所使用的内存块是在innodb buffer pool中分出来的,而innodb buffer pool就是为了
缓存数据,索引,undo ... .. 如果change buffer 过大了那么它就挤占了本来用于缓存数据,索引的内存,这样就可能引发
mysql数据库的性能问题了。
四、对innodb change buffer 进行精细控制:
----
mysql-5.7 innodb change buffer 详解的更多相关文章
- MySQL数据库使用mysqldump导出数据详解
mysqldump是mysql用于转存储数据库的实用程序.它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等.接下来通过本文给大家介绍MySQL数 ...
- 【转】MySQL用户管理及SQL语句详解
[转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...
- (转)总结之:CentOS 6.5 MySQL数据库的基础以及深入详解
总结之:CentOS 6.5 MySQL数据库的基础以及深入详解 原文:http://tanxw.blog.51cto.com/4309543/1395539 前言 早期MySQL AB公司在2009 ...
- (转)MySQL性能调优my.cnf详解
MySQL性能调优my.cnf详解 https://blog.linuxeye.cn/379.html http://blog.csdn.net/orichisonic/article/details ...
- MySQL 5.5: InnoDB Change Buffering
To speed up bulk loading of data, InnoDB implements an insert buffer, a special index in the InnoDB ...
- MySql绿色版配置及使用详解
原文:MySql绿色版配置及使用详解 最近在做项目开发时用到了MySql数据库,在看了一些有关MySql的文章后,很快就上手使用了.在使用的过程中还是出现了一些问题,因为使用的是绿色免安装版的MySq ...
- MySQL数据库的各种存储引擎详解
原文来自:MySQL数据库的各种存储引擎详解 MySQL有多种存储引擎,每种存储引擎有各自的优缺点,大家可以择优选择使用: MyISAM.InnoDB.MERGE.MEMORY(HEAP).BDB ...
- mysql数据库分区功能及实例详解
分区听起来怎么感觉是硬盘呀,对没错除了硬盘可以分区数据库现在也支持分区了,分区可以解决大数据量的处理问题,下面一起来看一个mysql数据库分区功能及实例详解 一,什么是数据库分区 前段时间写过一篇 ...
- C#自制Web 服务器开发:mysql免安装版配置步骤详解分享
mysql免安装版配置步骤详解分享 1.准备工作 下载mysql的最新免安装版本mysql-noinstall-5.1.53-win32.zip,解压缩到相关目录,如:d:\ mysql-noinst ...
随机推荐
- cognos report利用文本框提示优化日期维度
为了尽量减少手工对日期维度的维护,在日期维度表中年份已经到了2099年,把年份作为下拉框或者月份作为下拉框的时候,选择起来颇为麻烦(当然也可以在此基础之上设置默认为当前月) 如图:提示页面以及html ...
- matlab中,怎样把矩阵中所有的0改为2
一句话搞定:>> a(find(a==0))=[2]:把矩阵中所有的0改为2
- iptables日志与limit参数
在处理工作问题的时候需要查看防火墙的日志,由于默认日志都是在系统日志里/var/log/messages里面.需要对rsyslog做设置. 首先编辑配置文件/etc/rsyslog.conf如下: # ...
- Singular value encountered in calculation for ROI
在ENVI中对一幅TM影像进行监督分类,在进行compute ROI separability时提示Singular value encountered in calculation for ROI, ...
- Eclipse——工作台
Workspace 磁盘区域.存放工作资料
- exception javax.crypto.BadPaddingException: Given final block not properly padded
exception javax.crypto.BadPaddingException: Given final block not properly padded CreationTime--20 ...
- 〖Linux〗Clang/Clang++ for Android Binary/NDK build(二进制可执行文件/NDK编译)
#1. 下载并安装NDK(解压即可,目前最新版是r9c) http://developer.android.com/tools/sdk/ndk/index.html #2. 安装NDK独立编译工具 c ...
- 〖Linux〗zigbee实验之cc2430移植tinyos2.x的步骤(Ubuntu13.10)
开发环境:Ubuntu13.10 1. 添加源,并安装tinyos-2.11:sudo gedit /etc/apt/sources.list #往里边添加deb http://tinyos.sta ...
- jquery之往一个CSS属性里写入多个值
<html> <head> <title>test</title> <base href="<%=basePath%>&qu ...
- jQuery ajax - ajax() 方法详解
一些代码通过jQuery来做ajax异步提交. //验证昵称是否存在 function checkNickNameIsExist(){ var nickName = jQuery("#nic ...