位置: 编程技术 - 正文

MySQL优化之InnoDB优化(mysql innode)

编辑:rootadmin

推荐整理分享MySQL优化之InnoDB优化(mysql innode),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:mysql innode,mysql in怎么优化,mysql innodb执行流程,mysql inner join优化,mysql innodb 优化,mysql innodb myisam,mysql innodb 优化,mysql innodb 优化,内容如对您有帮助,希望把文章链接给更多的朋友!

学习计划很容易就被打断,坚持也不容易。最近公司里开会,要调整业务方向,建议学习NodeJS。NodeJS之前我就会一点,但是没有深入研究。Node的语法和客户端Js基本上是一样的,这半年来很少开发有客户端的东西。本来JS基础还行的我,也对这块的知识陌生了。看起来知识都是用进废退的,不常用了,过不了多久就会遗忘。所以又重新复习了JS的相关知识。学习了Node的服务器与socket知识。MySQL的计划就这样的搁浅起来,星期天的时候吃吃喝喝睡睡,早上又懒的要命,熬着熬着就熬到了下午。废话不多说了,继续进行MySQL的优化系列,这次看下InnoDB的优化项。

InnoDB的主索引是聚簇索引,索引与数据公用表空间。对于InnoDB来说,数据就是索引,索引就是数据。InnoDB缓存机制与MyISAM的最大区别在于,InnoDB不仅缓存索引,同时还会缓存数据。

一、InnoDB缓存池

InnoDB缓存池(InnoDB buffer pool)是提升InnoDB提升性能的关键,它既可以缓存数据,又可以缓存索引,甚至其他的管理数据(元数据、行级锁)等。可以使用show variables like 'innodb%pool%'; 来查看相关的参数选项。

innodb_buffer_pool_size

innodb_buffer_pool_size是用于设置InnoDB缓存池(InnoDBBufferPool)的大小,默认值是M.InnoDB缓存池的大小对InnoDB的整体性能影响较大,如果当前的MySQL服务器专门用作MySQL服务,那么可以尽量的增加该参数的大小。

innodb_buffer_pool_instance

innodb_buffer_pool_instance默认值是1,表示InnoDB缓存池被划分为一个区域,适当的增加该参数值,可以提升InnoDB的并发性能。

innodb_additional_mem_pool_size

指定InnoDB用于来存储数据字典和其他内部数据的缓存大小,默认值是2M.InnoDB的表个数越多,就应该适当的增加该参数的大小。

二、InnoDB缓存池内部结构

InnoDB在内存中维护一个缓存池用于缓存数据和索引。缓存池可以认为是一条很长的链表(list).该链表分为两个子链表,一个子链表存放old page数据,old page 数据是长时间未被访问的数据页,亮一个子链表存放new page,new page 是最近被访问的数据页。old page 默认占整个链表大小的%,可以通过innodb_old_blocks_pct参数查看.

old page 和 new page 的交汇点称为midpoint。

当用户访问数据时,InnoDB首先会再InnoDB缓存中查找数据,如果缓存池中没有数据,InnoDB会将硬盘中的数据插入到InnoDB缓存池中,如果缓存池已满,则利用LRU算法清楚过期的老数据

三、InnoDB缓存池预热。

MySQL优化之InnoDB优化(mysql innode)

MySQL服务器启动一段时间后,InnoDB会将经常访问的数据(业务数据,管理数据)放入InnoDB缓存中,即InnoDB缓存池中保存的是频繁需要访问的数据(简称热数据)。当InnoDB缓存池的大小是几十G或者上百G的时候,如果重启MySQL,如果将之前InnoDB缓存池中的热数据加载到InnoDB缓存池中呢?

如果单靠InnoDB自身预热的InnoDB缓存池,将会是一个不短的时间周期,这对于业务繁忙的系统来说,长时间的挂机,是严重的生产事故,不能够容忍。幸好在MySQL5.6版本支持关闭服务时,可以将热数据保存至硬盘,MySQL重启是首先将硬盘中的热数据加载到InnoDB的缓存中去,这样可以缩短预热的时间,提高业务繁忙高并发时的效率。

innodb_buffer_pool_dump_at_shutdown

默认是关的,如果开启参数,停止MySQL服务是,InnoDB缓存中的热数据将会保存到硬盘中。

innodb_buffer_pool_load_at_starup

默认是关闭的,如果开启该参数,启动MySQL服务时,MySQL将本地硬盘的热数据加载到InnoDB缓存池中。

innodb_buffer_pool_dump_now

默认关闭,如果开启该参数,停止MySQL服务时,以手动方式将InnoDB缓存池中的热数据保存到本地硬盘。

innodb_buffer_pool_load_now

默认关闭,如果开启该参数,启动MySQL服务时,以手动方式将本地硬盘的数据加载到InnoDB缓存池中,

innodb_buffer_pool_filename

如果开启InnoDB预热功能,停止MySQL服务是,MySQL将InnoDB缓存池中的热数据保存到数据库根目录下,默认文件名是这个参数的值。

开启InnoDB缓存后,可以使用如下命令查看当前InnoDB缓存池预热的状态信息:

这里面的英语都比较简单,就不解释了。

四、InnoDB实时监控

mysql> show engine innodb statusG

MySQL优化之缓存优化 高兴的是有博友mark了我的文章。我知道mark之后,很少会再来继续关注的。但是从侧面说明了在博友点开博客的同时,他感觉这篇博客是有价值的,是能

MySQL优化之连接优化 上文MySQL优化之缓存优化这篇文章中提到了一个很重要的概念,就是showvariables是用来表示系统编译或者配置在my.cnf中的变量值。而showstatus则称之为状态

MySQL优化之缓存优化(续) MySQL内部处处皆缓存,等什么时候看了MySQL的源码,再来详细的分析缓存的是如何利用的。这部分主要将各种显式的缓存优化:查询缓存优化结果集缓存

标签: mysql innode

本文链接地址:https://www.jiuchutong.com/biancheng/349915.html 转载请保留说明!

上一篇:InnoDb 体系架构和特性详解 (Innodb存储引擎读书笔记总结)(innodb底层实现原理)

下一篇:MySQL优化之缓存优化(mysql缓冲区)

  • 商场购物卡的会员怎么用
  • 财务台账包含什么
  • 住房贷款专项扣除
  • 企业所得税季度申报表A类
  • 经纪代理代订机票电了发票如何入账
  • 在项目地预缴税款有哪些税种
  • 单位搬迁员工怎么办
  • 资产负债表专项储备放哪个科目?
  • 计提资产减值准备金的纳税调整
  • 装修保证金怎么记账
  • 劳务费代扣代缴后还需要开发票吗
  • 公司收到一张专用发票
  • 资本公积金转增股本所获取的收益属于
  • 去年漏记一笔银行付款怎么办
  • 堤围内的土地性质
  • 现金出资可以吗
  • 季报每个月需要反写吗
  • 个体户税务登记怎么注销
  • 小规模纳税人核定标准
  • 自然灾害造成的存货净损失计入什么科目
  • 企业法人不发工资合法吗
  • 公司没有车牌可以买车吗
  • 公司之间借款收据要领导签字吗
  • 没有税务章的收款收据怎么做账?
  • 增值税小规模纳税人减免增值税政策
  • 应付股利会计分录例题
  • 资产收购的特殊性税务处理方法
  • 票据质押后如何行使质权
  • 少计提增值税0.01计入营业外
  • 材料暂估的会计分录怎么做
  • 出售货物货款预缴增值税
  • 什么叫做材料成型工艺
  • csinject.exe是什么程序的进程 csinject进程是安全的吗
  • win10 1909无法连接到这个网络
  • PHP:pcntl_strerror()的用法_PCNTL函数
  • 属于工业企业期间费用的是
  • 增值税发票开红字发票后账务处理?
  • json格式字符串提取值
  • 混合债清偿顺序
  • 黑白相间表带
  • 2022年 change detection遥感图像变化检测 论文附代码
  • 调整税率后增值税发票的开具正确的有
  • 合伙企业分红怎么做账
  • 未达起征点的增值税怎么账务处理
  • 本月应付电费400元,下月支付
  • 应付职工薪酬属于什么会计科目
  • python中@是什么意思
  • 苹果mac安装
  • mysql workbench简介
  • 发票丢失一张罚款标准
  • 资产损失税前扣除
  • 小规模纳税人技术维护费可以抵扣吗
  • 申报表本期金额和上期金额
  • 开票系统服务费计入什么费用
  • 减免的应付账款如果入账
  • 公司开出发票但未收到款如何写分录?
  • 业务招待费 纳税调增
  • 长期待摊费用的最新账务处理
  • 企业的借款费用有哪些处理方法
  • 食堂的电费能分两次交吗
  • 分公司有独立账套吗
  • 其他应付款的核算范围包括应付短期租赁
  • 在docker中使用service命令
  • sqlserver数据库备份
  • win8.1怎么升级到win11
  • win8.1开机进入桌面
  • wpr是什么软件
  • 教你彻底消灭牛身上的蜱虫
  • win8.1怎么设置
  • 备份ubuntu系统
  • 合并多个js文件
  • ExtJs 3.1 XmlTreeLoader Example Error
  • android应用程序开发的流程
  • android 退出app
  • Vuforia ImageTarget Native版本编译
  • os执行cmd命令
  • js中的函数怎么使用
  • android adt
  • 亳州国税局电话号码
  • 增值税劳务费发票图片
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设