Oracle資料庫緩衝區命中率(轉)
Oracle資料庫緩衝區命中率(轉)[@more@]1、檢視Oracle資料庫緩衝區命中率
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
資料庫緩衝區命中率:
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
這裡命中率的計算應該是
令x=physical reads direct + physical reads direct(lob)
命中率=100-(physical reads -x)/(consistent gets +db block gets -x)*100
通常如果發現命中率低於90%,則應該調整應用可以考慮是否增大資料加
共享池的命中率
sql> select sum(pinhits)/sum(pins)*100 "hit radio" from v$librarycache;
如果共享池的命中率低於95%就要考慮調整應用(通常是沒應用bind var)或者增加記憶體。
關於排序部分
sql> select name,value from v$sysstat where name like '%sort%';
如果我們發現sorts(disk)/(sorts(memory)+sorts(disk))的比例過高,則通常意味著sort_area_size部分記憶體教較小,可考慮調整相應的引數。
關於log_buffer
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.
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
資料庫緩衝區命中率:
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
這裡命中率的計算應該是
令x=physical reads direct + physical reads direct(lob)
命中率=100-(physical reads -x)/(consistent gets +db block gets -x)*100
通常如果發現命中率低於90%,則應該調整應用可以考慮是否增大資料加
共享池的命中率
sql> select sum(pinhits)/sum(pins)*100 "hit radio" from v$librarycache;
如果共享池的命中率低於95%就要考慮調整應用(通常是沒應用bind var)或者增加記憶體。
關於排序部分
sql> select name,value from v$sysstat where name like '%sort%';
如果我們發現sorts(disk)/(sorts(memory)+sorts(disk))的比例過高,則通常意味著sort_area_size部分記憶體教較小,可考慮調整相應的引數。
關於log_buffer
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.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10617731/viewspace-961596/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 調節Oracle資料緩衝區引數,緩衝整個資料庫(轉)Oracle資料庫
- 如何計算oracle的資料緩衝區命中率與共享池的命中率Oracle
- Oracle-監控緩衝區的命中率Oracle
- cuug 資料緩衝區調優
- Buffer Cache Size(資料緩衝區)
- mysql檢視緩衝池命中率MySql
- C 標準庫IO緩衝區和核心緩衝區的區別
- 資料庫存取緩衝區的LRU與MRU演算法資料庫演算法
- Java NIO -- 緩衝區(Buffer)的資料存取Java
- 緩衝區分析
- 【轉載】Oracle資料庫提高命中率及相關優化Oracle資料庫優化
- 關於資料庫緩衝池的問題資料庫
- Java NIO:緩衝區Java
- getchar緩衝區
- 快速解決Oracle緩衝區忙等待事件Oracle事件
- Sybase EAServer 6.x資料庫緩衝池配置Server資料庫
- Java NIO 之緩衝區Java
- Unity深度緩衝區指令Unity
- Java整數緩衝區Java
- nginx 緩衝區構造Nginx
- stdio流緩衝區
- Oracle調整緩衝區快取記憶體Oracle快取記憶體
- IMail SMTP 緩衝區溢位漏洞 (APP,缺陷) (轉)AIAPP
- Oracle資料庫提高命中率及相關優化Oracle資料庫優化
- Node.js Buffer(緩衝區)Node.js
- PHP的輸出緩衝區PHP
- JavaScript WebGL 幀緩衝區物件JavaScriptWeb物件
- Linux 命令 管道 緩衝區Linux
- log buffer(日誌緩衝區)
- Java NIO 之 Buffer(緩衝區)Java
- Java NIO2:緩衝區Java
- 動態更新——緩衝區物件物件
- 緩衝區溢位實驗
- (轉)資料庫oracle for update of和for update區別資料庫Oracle
- Libevent應用 (三) 資料緩衝
- Oracle資料庫提高命中率及相關最佳化Oracle資料庫
- Oracle 12cR1中效能最佳化新特性之全資料庫緩衝模式Oracle資料庫模式
- 駭客中級技術--緩衝區溢位攻擊(轉)