程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle數據庫緩沖區命中率的概述

Oracle數據庫緩沖區命中率的概述

編輯:Oracle數據庫基礎

Oracle數據庫緩沖區命中率是我們經常用到的,以下的文章主要是介紹Oracle數據庫緩沖區命中率,以下就是正文的介紹。你如果是Oracle數據庫緩沖區命中率的相關內容的瘋狂一族的話,以下的文章,你一定不要錯過。

1、查看Oracle數據庫緩沖區命中率

  1. select a.value + b.value "logical_reads", c.value 
    "phys_reads", round(100 * ((a.value+b.value)-c.value) 
    / (a.value+b.value)) "BUFFER HIT RATIO" from v$sysstat a, 
    v$sysstat b, v$sysstat c where a.statistic# = 40 and b.
    statistic# = 41 and c.statistic# = 42; 

2、Tags: Oracle

Oracle數據庫緩沖區命中率:

  1. sql>select value from v$sysstat where name =
    'physical reads'; value 3714179 sql>
    select value 
    from v$sysstat where name ='physical reads direct'

    value 0 sql>select value from v$sysstat where name
     
    ='physical reads direct(lob)'; value 0 sql>
    select value 
    from v$sysstat where name ='consistent gets'
    ; value 856309623 
    sql>select value from v$sysstat where name ='db block gets'

    value 19847790 

這裡命中率的計算應該是令

  1. x=physical reads direct + physical reads direct(lob) 

命中率

  1. =100-(physical reads -x)/(consistent gets +db block gets -x)*100 

通常如果發現命中率低於90%,則應該調整應用可以考慮是否增大數據加

共享池的命中率

  1. sql> select sum(pinhits)/sum(pins)*100 "hit radio" 
    from v$librarycache; 

如果共享池的命中率低於95%就要考慮調整應用(通常是沒應用bind var)或者增加內存。

關於排序部分

  1. sql> select name,
    value from v$sysstat where name like '%sort%'; 

如果我們發現sorts(disk)/(sorts(memory)+sorts(disk))的比例過高,則通常意味著sort_area_size部分內存教較小,可考慮調整相應的參數。

關於log_buffer

  1. sql>select name,value from v$sysstat where name in 
    ('redo entries','redo buffer allocation retrIEs'); 

假如redo buffer allocation retries/redo entrIEs的比例超過1%我們就可以考慮增加log_buffer.

上述的相關內容就是對Oracle數據庫緩沖區命中率的描述,希望會給你帶來一些幫助在此方面。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved