网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

mysql5.5--innodbbufferpool优化

InnoDB buffer pool 被设为两个SUBLIST:
一个是存放大部分查询所需用到的块;
另一个是存放小量查询所需用到的块;并可以被回收;
[@more@]

The InnoDB buffer pool is divided into two sublists:
A new sublist containing blocks that are heavily used by queries,
and an old sublist containing less-used blocks and from which candidates for eviction are taken.

创新互联建站是一家集网站建设,太康企业网站建设,太康品牌网站建设,网站定制,太康网站建设报价,网络营销,网络优化,太康网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

InnoDB buffer pool 被设为两个SUBLIST:
一个是存放大部分查询所需用到的块;
另一个是存放小量查询所需用到的块;并可以被回收;

In the default operation of the buffer pool,
a block when read in is loaded at the midpoint and then moved immediately to the head of the new sublist as soon as an access occurs.
In the case of a table scan (such as performed for a MySQLdump operation),
each block read by the scan ends up moving to the head of the new sublist because multiple rows are accessed from each block.
This occurs even for a one-time scan, where the blocks are not otherwise used by other queries.
Blocks may also be loaded by the read-ahead background thread and then moved to the head of the new sublist by a single access.
These effects can be disadvantageous because they push blocks that are in heavy use by other queries out of the new sublist
to the old sublist where they become subject to eviction.

默认情况下,一个数据块只要被访问,那么这个块将立刻被放到“最新访问列表”的头部;
像MYSQLDUMP,需求全表扫描一次,那么BUFFERPOOL里的块将被重新换一次;
这样做的一个缺点就是BUFFERPOOL里的块换进换出特别的频繁,而且有可能把一些热块给换出去;最终导致频繁IO;

InnoDB now provides two system variables that enable LRU algorithm tuning:

innodb_old_blocks_pct
Specifies the approximate percentage of the buffer pool used for the old block sublist.
The range of values is 5 to 95. The default value is 37 (that is, 3/8 of the pool).

innodb_old_blocks_time
Specifies how long in milliseconds (ms) a block inserted into the old sublist must stay there after its first access
before it can be moved to the new sublist.
The default value is 0:
A block inserted into the old sublist moves immediately to the new sublist the first time it is accessed,
no matter how soon after insertion the access occurs. If the value is greater than 0, blocks remain in the old sublist until an access occurs at least that many ms after the first access. For example, a value of 1000 causes blocks to stay in the old sublist for 1 second after the first access before they become eligible to move to the new sublist

BLOCK 被第一次访问的后,先呆在”old sublist“,的等待”innodb_old_blocks_time“ms后会移到“new sublist”;
这样一个大的全表扫描查询就不会马上把热块给踢出去;

详见: http://dev.mysql.com/doc/refman/5.5/en/innodb-buffer-pool.html


本文题目:mysql5.5--innodbbufferpool优化
链接地址:http://bjjierui.cn/article/gigiec.html

其他资讯