ホームページ  >  記事  >  データベース  >  MySQL5.6新特性快速预热Buffer_Pool缓冲池

MySQL5.6新特性快速预热Buffer_Pool缓冲池

WBOY
WBOYオリジナル
2016-06-07 17:40:211118ブラウズ

在之前的版本里,如果一台高负荷的机器重启后,内存中大量的热数据被清空,此时就会重新从磁盘加载到Buffer_Pool缓冲池里,这样当高峰期间,性能就会变得很差,

在之前的版本里,如果一台高负荷的机器重启后,内存中大量的热数据被清空,美国空间,此时就会重新从磁盘加载到Buffer_Pool缓冲池里,这样当高峰期间,性能就会变得很差,美国服务器,连接数就会很高。

在MySQL5.6里,一个新特性避免的这种问题的出现。

你只需在my.cnf里,加入如下:

innodb_buffer_pool_dump_at_shutdown = 1

解释:在关闭时把热数据dump到本地磁盘。


innodb_buffer_pool_dump_now = 1

解释:采用手工方式把热数据dump到本地磁盘。


innodb_buffer_pool_load_at_startup = 1

解释:在启动时把热数据加载到内存。


innodb_buffer_pool_load_now = 1

解释:采用手工方式把热数据加载到内存。

 

在关闭MySQL时,会把内存中的热数据保存在磁盘里ib_buffer_pool文件中,位于数据目录下。

查看日志,你会发现:

在启动后,会自动加载热数据到Buffer_Pool缓冲池里。

查看日志,你会发现:

这样,始终保持热数据在内存中。

注:只有在正常关闭MySQL服务,美国服务器,或者pkill mysql时,会把热数据dump到内存。机器宕机或者pkill -9 mysql,是不会dump。

 

本文出自 “贺春旸的技术专栏” 博客,请务必保留此出处

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。