亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 數據庫 > MySQL > 正文

從MySQL的源碼剖析Innodb buffer的命中率計算

2024-07-24 13:07:14
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了從MySQL的源碼剖析Innodb buffer的命中率計算,作者結合C語言寫的算法來分析innodb buffer hit Ratios,需要的朋友可以參考下

按官方手冊推薦Innodb buffer Hit Ratios的計算是:

 

 
  1. 100-((iReads / iReadRequests)*100) 
  2. iReads : mysql->status->Innodb_buffer_pool_reads 
  3. iReadRequests: mysql->status->Innodb_buffer_pool_read_requests 

出處: http://dev.mysql.com/doc/mysql-monitor/2.0/en/mem_graphref.html

搜”Hit Ratios”

推薦有興趣的同學把這個頁面都看一下應該也會有很大收獲.

另外在hackmysql: www.hackmysql.com網站上的: mysqlsqlreport中關于buffer命中計算是:

 

 
  1. $ib_bp_read_ratio = sprintf "%.2f"
  2. ($stats{'Innodb_buffer_pool_read_requests'} ? 
  3. 100 - ($stats{'Innodb_buffer_pool_reads'} / 
  4. $stats{'Innodb_buffer_pool_read_requests'}) * 100 :0); 

即:

 

 
  1. ib_bp_hit=100-(Innodb_buffer_pool_reads/Innodb_buffer_pool_read_requests)*100 

另外我們知道查看Innodb Buffer Hit Ratios的地方是:

復制代碼代碼如下:

show engine innodb status/G;

Buffer pool hit rate : XXXX/1000;

那個XXX/1000即是buffer pool hit ratios的命中.

這樣也可以從代碼里看一下這個bp命中計算:

 

 
  1. storage/innobase/buf/buf0buf.c # void buf_print_io 
  2. storage/innodbase/include/buf0buf.h #struct buf_block_struct 

在buf0buf.c 中的buf_print_io函數中可以看到:

 

 
  1. void 
  2. buf_print_io( 
  3. … 
  4.  
  5. if (buf_pool->n_page_gets > buf_pool->n_page_gets_old) { 
  6. fprintf(file, "Buffer pool hit rate %lu / 1000/n"
  7. (ulong) 
  8. (1000 - ((1000 * (buf_pool->n_pages_read 
  9. - buf_pool->n_pages_read_old)) 
  10. / (buf_pool->n_page_gets 
  11. - buf_pool->n_page_gets_old)))); 
  12. else { 
  13. fputs("No buffer pool page gets since the last printout/n"
  14. file); 
  15.  
  16. buf_pool->n_page_gets_old = buf_pool->n_page_gets; 
  17. buf_pool->n_pages_read_old = buf_pool->n_pages_read; 
  18. … 

結合:

storage/innobase/include/buf0buf.h中

 

 
  1. struct buf_block_struct{ 
  2. … 
  3. ulint n_pages_read; /* number read operations */ 
  4. … 
  5. ulint n_page_gets; /* number of page gets performed; 
  6. also successful searches through 
  7. the adaptive hash index are 
  8. counted as page gets; this field 
  9. is NOT protected by the buffer 
  10. pool mutex */ 
  11. … 
  12. ulint n_page_gets_old;/* n_page_gets when buf_print was 
  13. last time called: used to calculate 
  14. hit rate */ 
  15. … 
  16. ulint n_pages_read_old;/* n_pages_read when buf_print was 
  17. last time called */ 
  18. … 

從這個來看innodb buffer hit Ratios的命中計算需要本次取的值和上次值做一個減法公式應該為

 

 
  1. ib_bp_hit=1000 – (t2.iReads – t1.iReads)/(t2.iReadRequest – t1.iReadRequest)*1000 

t(n): 時間點 兩個時間間隔最少是30秒以上,在小意義不大.

 

 
  1. iReads: Innodb_buffer_pool_reads 
  2. iReadRequest: Innodb_buffer_pool_read_requests 

對innodb的輸出參數有興趣的可以關注: storage/innobase/buf/Srv0srv.c 中的:

 

 
  1. void srv_export_innodb_status() 

思考:

對于innodb_buffer_pool_read_requests, innodb_buffer_pool_reads這種累加值,當很大時進行: innodb_buffer_pool_reads/innodb_buffer_pool_read_requests 相來講只能得到從開始到現在的命中率的表現了. 如果想得到現在近五分鐘,近一分鐘或是8點到9點每分鐘的命中率情況,如果還是按著innodb_buffer_pool_reads/innodb_buffer_pool_read_requests 進行計算,只能得到mysqld開起累計在8點-9點的每分鐘的累計平均命中情況.

所以如果想到每(五)分鐘的命中情況,就需要本次取得的值和一(五)分鐘前的值進行相減,然后進行運算.這樣才能得到一個當下的bp命中情況.

兩種方法沒實質的對錯的問題,但相對于源碼中的那種計算方式更容讓發現數據庫的抖動問題.

能解決的問題:

偶而的數據庫性能抖動能直觀的反應出來.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
在线视频国产日韩| 国产精品久久久久久久久久久新郎| 国产精品高潮呻吟久久av无限| 亚洲精品动漫100p| 日韩高清电影好看的电视剧电影| 成人午夜黄色影院| 国产精品久久激情| 日韩av电影手机在线| 欧美黄网免费在线观看| 国产精品女主播视频| 国产精品久久久久久久美男| 久久国产精品久久久| 欧美在线播放视频| 国产玖玖精品视频| 国产成人久久精品| 成人精品久久久| 最近2019年手机中文字幕| 亚洲欧美综合图区| 国产欧美日韩精品专区| 久久久亚洲影院你懂的| 色偷偷av亚洲男人的天堂| 国产精品国产三级国产专播精品人| 26uuu日韩精品一区二区| 国内精品在线一区| 美日韩精品视频免费看| 成人国产精品免费视频| 96pao国产成视频永久免费| 狠狠做深爱婷婷久久综合一区| 91麻豆桃色免费看| 97精品久久久中文字幕免费| 欧洲亚洲免费视频| 色一情一乱一区二区| 亚洲欧美日韩在线一区| 亚洲色图15p| 欧美激情免费观看| 88国产精品欧美一区二区三区| 97国产精品免费视频| 国产精品视频xxxx| 国产亚洲精品久久| 欧美中文字幕精品| 国产精品久久久久久av福利| 色综合天天综合网国产成人网| 国产精品久久久久不卡| 亚洲黄色免费三级| 亚洲国产成人久久综合一区| 成人av.网址在线网站| 久久精品一偷一偷国产| 日本免费久久高清视频| 日韩第一页在线| 成人免费午夜电影| 综合国产在线观看| 国产成人福利夜色影视| 日韩精品免费视频| 久久精品亚洲94久久精品| 国产成人精品国内自产拍免费看| 欧美大码xxxx| 久久天天躁夜夜躁狠狠躁2022| 91精品久久久久久久久久| 亚洲欧洲在线看| 久久躁狠狠躁夜夜爽| 日本伊人精品一区二区三区介绍| 欧美大片大片在线播放| 亚洲免费视频网站| 国产精品99久久99久久久二8| 亚洲成色777777女色窝| 国产亚洲精品久久久久动| 亚洲人成伊人成综合网久久久| 日韩在线观看网站| 亚洲成av人影院在线观看| 成人激情视频在线| 国产精品一二区| 91亚洲精品久久久| 久久久久国产精品www| 久久噜噜噜精品国产亚洲综合| 精品久久久久国产| 亚洲电影中文字幕| 亚洲欧美日韩图片| 亚洲人成啪啪网站| 国产精品视频网站| 亚洲a∨日韩av高清在线观看| 亚洲国产又黄又爽女人高潮的| 亚洲男人天堂手机在线| 亚洲香蕉成人av网站在线观看| 欧美小视频在线观看| 国产精品自拍视频| 国产性色av一区二区| 亚洲国产精品美女| 日韩在线观看电影| 国产精品久久9| 精品无人区乱码1区2区3区在线| 亚洲一区二区久久久久久久| 国产亚洲精品一区二555| 欧美在线一级va免费观看| 国内精品一区二区三区四区| 国产欧美一区二区三区久久| 中文国产成人精品| 最近2019中文字幕大全第二页| 国产日韩换脸av一区在线观看| 亚洲欧洲免费视频| 亚洲天堂男人天堂| 国产精品99久久久久久久久| 日韩久久午夜影院| 97精品国产97久久久久久| 欧美日韩一区二区在线播放| 久久成人这里只有精品| 亚洲第一免费网站| 日韩av片免费在线观看| 国产视频观看一区| 亚洲欧美在线一区| 成人伊人精品色xxxx视频| 色偷偷综合社区| 成人免费观看a| 国产亚洲欧美视频| 人体精品一二三区| 亚洲一级一级97网| 久久精品影视伊人网| 亚洲女同精品视频| 久久久久久久影院| 国内精品久久影院| 精品福利视频导航| 色与欲影视天天看综合网| 成人综合网网址| 91精品国产综合久久香蕉最新版| 欧日韩不卡在线视频| 欧美激情免费在线| 国产精品综合网站| 国产精品无码专区在线观看| 欧美另类精品xxxx孕妇| 68精品久久久久久欧美| 国产视频精品一区二区三区| 国产精品久久视频| 亚洲欧美日韩精品久久| 日韩有码片在线观看| 成人福利网站在线观看| 国产精品久久综合av爱欲tv| 97香蕉超级碰碰久久免费的优势| 琪琪亚洲精品午夜在线| 久久韩剧网电视剧| 国产视频精品xxxx| 成人97在线观看视频| 成人福利视频在线观看| 亚洲自拍小视频免费观看| 日韩精品在线视频美女| 欧美激情一区二区三区在线视频观看| 91久久精品久久国产性色也91| 欧美精品在线极品| 日韩欧美在线免费观看| 97人人爽人人喊人人模波多| 亚洲精品一区二区久| 久久久成人av| 久久99热这里只有精品国产| 国产精品pans私拍| 欧美在线视频网站| 精品视频在线观看日韩| 欧美成人中文字幕| 国产91九色视频| 欧美疯狂xxxx大交乱88av| 2019日本中文字幕| 亚洲欧美福利视频| 91在线观看免费观看| 亚洲精品国产精品乱码不99按摩| 日韩美女中文字幕| 欧美一级电影在线| 91在线视频免费|