MYSQL innodb buffer 狀態資料的儲存和載入
本文參考官方手冊
原創轉載請註明出處
版本:MYSQL 5.7
當資料庫重啟後,buffer中的資料需要重新預熱,所謂預熱就是等待常用資料通過使用者呼叫SQL語句從磁碟載入到記憶體,
這個過程ORACLE中叫做物理讀取,對於較大的平臺這個預熱過程往往需要較大的代價,典型的就是第一次執行一個select
語句很慢,過後再次執行就很快了。
對於這種情況innodb預設在關閉和啟動的時候都會儲存和載入狀態資料,由引數
innodb_buffer_pool_load_at_startup
和
innodb_buffer_pool_dump_at_shutdown
進行控制,預設都是on的
其儲存比率由引數控制
innodb_buffer_pool_dump_pct
預設為25%
而其檔案由引數
innodb_buffer_pool_filename控制預設為:
mysql> show variables like '%innodb_buffer_pool_filename%';
+-----------------------------+----------------+
| Variable_name | Value |
+-----------------------------+----------------+
| innodb_buffer_pool_filename | ib_buffer_pool |
+-----------------------------+----------------+
這個檔案在innodb資料檔案目錄下,其中儲存的是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的情況
作者微信:
原創轉載請註明出處
版本:MYSQL 5.7
當資料庫重啟後,buffer中的資料需要重新預熱,所謂預熱就是等待常用資料通過使用者呼叫SQL語句從磁碟載入到記憶體,
這個過程ORACLE中叫做物理讀取,對於較大的平臺這個預熱過程往往需要較大的代價,典型的就是第一次執行一個select
語句很慢,過後再次執行就很快了。
對於這種情況innodb預設在關閉和啟動的時候都會儲存和載入狀態資料,由引數
innodb_buffer_pool_load_at_startup
和
innodb_buffer_pool_dump_at_shutdown
進行控制,預設都是on的
其儲存比率由引數控制
innodb_buffer_pool_dump_pct
預設為25%
而其檔案由引數
innodb_buffer_pool_filename控制預設為:
mysql> show variables like '%innodb_buffer_pool_filename%';
+-----------------------------+----------------+
| Variable_name | Value |
+-----------------------------+----------------+
| innodb_buffer_pool_filename | ib_buffer_pool |
+-----------------------------+----------------+
這個檔案在innodb資料檔案目錄下,其中儲存的是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的情況
作者微信:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7728585/viewspace-2135756/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- MySQL-07.InnoDB資料儲存結構MySql
- 關於InnoDB表資料和索引資料的儲存索引
- MySQL InnoDB儲存引擎MySql儲存引擎
- MySQL儲存引擎:MyISAM和InnoDB的區別MySql儲存引擎
- mysql儲存引擎InnoDB詳解,從底層看清InnoDB資料結構MySql儲存引擎資料結構
- 《MySQL 基礎篇》十二:InnoDB 儲存引擎的資料結構MySql儲存引擎資料結構
- MySQL資料庫InnoDB儲存引擎中的鎖機制GVMySql資料庫儲存引擎
- 服務端指南 資料儲存篇 | MySQL(02) 儲存引擎的 InnoDB 與 MyISAM 之爭服務端MySql儲存引擎
- MySQL的寫入資料儲存過程MySql儲存過程
- MySQL的varchar儲存原理:InnoDB記錄儲存結構MySql
- MySQL InnoDB 儲存引擎探祕MySql儲存引擎
- MySQL:Innodb中數字的儲存方式MySql
- MySQL儲存引擎簡介及MyISAM和InnoDB的區別MySql儲存引擎
- MySQL中InnoDB儲存引擎的實現和執行原理MySql儲存引擎
- Spark SQL使用簡介(3)--載入和儲存資料SparkSQL
- MySQL三種InnoDB、MyISAM和MEMORY儲存引擎對比MySql儲存引擎
- 7-03. 實現資料儲存和載入的邏輯
- MySQL探祕(五):InnoDB鎖的型別和狀態查詢MySql型別
- spacy儲存和載入模型模型
- iOS UI狀態儲存和恢復(三)iOSUI
- MySQL儲存引擎--MyISAM與InnoDB區別MySql儲存引擎
- 《MySQL 效能優化》之 InnoDB 儲存引擎MySql優化儲存引擎
- [Mysql技術內幕]Innodb儲存引擎MySql儲存引擎
- MySQL InnoDB儲存引擎體系結構MySql儲存引擎
- MySQL兩種儲存引擎: MyISAM和InnoDB 簡單總結MySql儲存引擎
- MySQL儲存毫秒資料的方法MySql
- MySQL的索引為什麼用B+Tree?InnoDB的資料儲存檔案和MyISAM的有何不同?MySql索引
- MySQL InnoDB儲存引擎更新Cardinality統計資訊的策略介紹MySql儲存引擎
- 重新學習Mysql資料庫3:Mysql儲存引擎與資料儲存原理MySql資料庫儲存引擎
- 從一條資料說起——InnoDB儲存資料結構資料結構
- MySQL提升筆記(4)InnoDB儲存結構MySql筆記
- InnoDB資料字典--字典表載入
- MySQL入門--儲存過程(PROCEDURE)和儲存函式(FUNCTION)MySql儲存過程儲存函式Function
- MySQL之儲存引擎InnoDB和MyISAM的區別及底層詳解MySql儲存引擎
- 重新學習Mysql資料庫2:『淺入淺出』MySQL 和 InnoDBMySql資料庫
- 談談MySQL InnoDB儲存引擎事務的ACID特性MySql儲存引擎
- 隨筆:MySQL中'' ' ' NULL在Innodb儲存的區別MySqlNull
- Mysql-Innodb : 從一個位元組到整個資料庫表瞭解物理儲存結構和邏輯儲存結構MySql資料庫
- MySQL innodb_buffer_pool_size 變數MySql變數