InnoDB Insert(插入)操作(下)--mysql技术内幕

原创 2015年07月10日 13:13:18

接上一篇文章,最后做的那个实验,我是想证明mysql innodb存储引擎,commit操作与flush数据到磁盘之间的关系,当与同事交流之后,他说,你应该把innodb_buffer_size的大小考虑到里面,其实我是有考虑的,在开始的部分就有做过假设,假如buffer大小为1G,数据大小为2G,那么在进行事务插入操作时,势必是要在commit操作之前,将缓存数据进行写入磁盘的吧。

再者而言,接上篇实验,我分别进行了两组,一组是进行了rollback操作,另外一组是进行了commit,发现,rollback的操作时间远远大于commit操作的。是否可以假象为,其实数据已经落盘,只不过在数据页面上,存在一个事务标识符,实现事务的隔离机制,对于其他session不可见。而此时rollback操作就要把数据一条一条的从磁盘中清除,这个速度肯定会比较缓慢,当然这个删除的机制,我还是不太清楚,是重新走一边buffer,还是直接消失掉;而且,在进行了rollback操作之后,数据文件大大小并没有改变,是否可以假象为,曾经分配的物理空间,并没有及时收回,以便下次重新利用。再说commit操作,它是在极短的时间内完成的,有可能的原因就是,这个操作只是把磁盘中数据页上的事务标识信息移除掉,就ok了。好吧,秉着严谨的实验态度,再来进行一次实验。(下班回去再做吧)

innodb_buffer_size= ,确保足够新插入数据的缓冲。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Mysql技术内幕InnoDB存储引擎——InnoDB存储引擎

特此申明: 前段时间找工作所以看了《Mysql技术内幕InnoDB存储引擎》,整理的时候除了参考网上已有的笔记贴,加上自己整合的,可能和别人有雷同之处。不过无所谓啦,写出来自己看看,需要的朋友参...
  • yingminxing
  • yingminxing
  • 2012年12月07日 10:43
  • 5448

《MySQL技术内幕:InnoDB存储引擎》第2版笔记

第1章 MySQL体系结构和存储引擎1.1 定义数据库和实例 在MySQL数据库中,数据库文件可以是fm、MYD、MYI、ibd结尾的文件。 MySQL数据库由后台线程以及一个共享内存区组成。 MyS...
  • youngsend
  • youngsend
  • 2015年09月24日 20:24
  • 2697

关于mysql纯insert时候InnoDB和MyISAM的区别

有个任务,大概需要插入表中百万row数据。最开始因为本地mysql管理工具Navicat中默认建表都是InnoDB引擎,所以建了一个InnoDB引擎的表,之后开始insert,从早上9点多刀下午三点半...
  • qdujunjie
  • qdujunjie
  • 2015年02月10日 15:37
  • 1422

MySQL innoDB数据插入性能优化

起因:有一个innoDB引擎的表Table,在一个大概3000次的foreach循环中执行 INSERT INTO Table(columnA, columnB) VALUES (val...
  • u012723548
  • u012723548
  • 2015年11月21日 17:03
  • 2829

MySQL技术内幕 InnoDB存储引擎(一)

第一章-MySQL体系结构和存储引擎 1定义数据库和实例 “数据库”(database)和“实例”(instance)是两个容易被混淆的概念。 其中,数据库是指:物理操作系统文件或其他形式文件...
  • u014071426
  • u014071426
  • 2016年12月06日 23:02
  • 336

InnoDB提高数据insert效率

如果local_infile 被禁用,InnoDB中怎么提高insert的效率呢? 1.尽量保持数据有序。减少数据插入时对索引的维护成本。 2.一次插入多条数据。减少日志,降低日志刷新磁盘的频率。...
  • lwei_998
  • lwei_998
  • 2013年11月26日 13:14
  • 2537

Mysql Innodb 技术内幕读书笔记

Inndb存储引擎 mvcc 多版本并发控制 -> 高并发性 innodb 实现了四种隔离机制,默认可重复读 next-key-locking 避免幻读 插入缓冲 二次写 自适应hash 预读 Myi...
  • qq_17612199
  • qq_17612199
  • 2016年11月12日 10:17
  • 1269

《MySQL技术内幕——InnoDB存储引擎》读书笔记(一)——MySQL体系结构和存储引擎

一、定义数据库和数据库实例 数据库 (database): 物理操作系统文件或其他形式文件类型的集合 实例(instance) :  MySQL数据库由后台线程以及一个共享内存区组成,共享内存可以...
  • u011468424
  • u011468424
  • 2016年09月10日 19:31
  • 467

innodb insert buffer 插入缓冲区

今天在做一个大业务的数据删除时,看到下面的性能曲线图   在删除动作开始之后,insert buffer 大小增加到140。对于这些状态参数的说明 InnoDB ...
  • YABIGNSHI
  • YABIGNSHI
  • 2016年09月08日 15:49
  • 1841

InnoDB Insert(插入)操作(上)--mysql技术内幕

当客户端发出一条insert指令后,对于一张innodb类型的表,它的内部究竟会做出怎样的反应呢?本文章将为大家揭开这 一内幕。当然,本人才疏学浅,如果你发现了什么不对的地方,可以指出来,大家一起讨论...
  • sun_ashe
  • sun_ashe
  • 2015年07月06日 22:18
  • 792
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:InnoDB Insert(插入)操作(下)--mysql技术内幕
举报原因:
原因补充:

(最多只允许输入30个字)