本文參考官方手冊
原創(chuàng)轉載請注明出處
版本:MYSQL 5.7
當數(shù)據(jù)庫重啟后,buffer中的數(shù)據(jù)需要重新預熱,所謂預熱就是等待常用數(shù)據(jù)通過用戶調(diào)用SQL語句從磁盤載入到內(nèi)存,
這個過程ORACLE中叫做物理讀取,對于較大的平臺這個預熱過程往往需要較大的代價,典型的就是第一次運行一個select
語句很慢,過后再次執(zhí)行就很快了。
對于這種情況innodb默認在關閉和啟動的時候都會保存和加載狀態(tài)數(shù)據(jù),由參數(shù)
innodb_buffer_pool_load_at_startup
和
innodb_buffer_pool_dump_at_shutdown
進行控制,默認都是on的
其保存比率由參數(shù)控制
innodb_buffer_pool_dump_pct
默認為25%
而其文件由參數(shù)
innodb_buffer_pool_filename控制默認為:
mysql> show variables like '%innodb_buffer_pool_filename%';
+-----------------------------+----------------+
| Variable_name | Value |
+-----------------------------+----------------+
| innodb_buffer_pool_filename | ib_buffer_pool |
+-----------------------------+----------------+
這個文件在innodb數(shù)據(jù)文件目錄下,其中保存的是space_no,page_no形式如下:
545,213
545,212
545,211
545,210
545,209
545,208
545,207
......
在線情況下可以使用如下語句:
SET GLOBAL innodb_buffer_pool_dump_now=ON;
SET GLOBAL innodb_buffer_pool_load_now=ON;
進行dump和load,并且可以通過
SHOW STATUS LIKE 'Innodb_buffer_pool_dump_status';
和
SHOW STATUS LIKE 'Innodb_buffer_pool_load_status';
查看dump和load的情況
作者微信:
本文標題:MYSQLinnodbbuffer狀態(tài)數(shù)據(jù)的保存和載入-創(chuàng)新互聯(lián)
網(wǎng)站地址:
http://weahome.cn/article/hghhj.html