ҪǰһЩOracle TuningһܽᣬʵʿɲΪĿģϽⲿ֪ʶʹ־һOracle֪ʶʹܹOracle Tuning˽⣬ܹʵijЩеڸϸ֪ʶμĽἰƼ鼮ͬʱڸû̫Ҹӣıضʧ֮ƫĵط벻ߴͽ̣ͬ 鿴ȫ
alter session set events 'immediate trace name flush_cache level 1';
:
alter session set events = 'immediate trace name flush_cache';
ƵҲʹalter systemϵͳ:
alter system set events = 'immediate trace name flush_cache';
Oracle10gУOracleṩһµԣͨˢBuffer Cache:
alter system flush buffer_cache;
http://www.itpub.net/744933.html ʣԣڽڽæнݱȽ٣ϣש
ۡ
ỰҪʻ洢еݿ飬ݿڱỰʹʱbuffer busy
waits¼Ựڴļ洢ͬݿ飬ڻ洢
жġ
ΪȷȡỰӵиĻĵݿһµӳĸݿ
ĻỰбһ־Ự֪һڽжȺĵĵɡ
ͼv$waitstatOWIΪûһṩõĵȴͳơbuffer
busyȴ¼ĻΪ顢α⡢顢⡣ 鿴ȫ
STATSPACK ռ
Statspack ͵ռѡ
levelռݵ
ޣthresholdռݵֵ
1level
Statspack ֿռĬֵ5
a.level 0: һͳơȴ¼ϵͳ¼ϵͳͳơعͳơл桢SGAỰ
ͳƵȵȡ
b.level 5: SQL 䡣˰level0 ݣSQL ռռ¼
stats$sql_summary С
c.level 10: ͳơlevel5 ݡһὫӵ
stats$lathc_children СʹʱҪأOracle support ָ½С
ͨstatspack ȱʡļ
SQL>execute statspack.snap(i_snap_level=>0,i_modify_parameter=>true);
ͨãԺռ0
ֻ뱾θıռ𣬿Ժi_modify_parameter
SQL>execute statspack.snap(i_snap_level=>10);
2
ֻӦstats$sql_summary лȡSQL 䡣
ΪÿһնռܶݣÿһжȡʱݿеһSQL 䣬
stats$sql_summary ܿͻΪStatspack ı
洢stats$statspack_parameter С˽һ¸ޣ
a. executions_th SQL ִе(Ĭֵ100)
b. disk_reads_tn SQL ִеĴ̶Ĭֵ1000
c. parse_calls_th SQL ִеĽõĬֵ1000
d. buffer_gets_th SQL ִеĻȡĬֵ10000
κһֵϲͻһ¼
ͨstatspack.modify_statspack_parameter ǿԸıĬֵ
磺
SQL>execute statspack.modify_statspack_parameter(i_buffer_gets_th=>100000,i_disk_reads_th=>100000;
Statspack⣺
statspack б鿴ʮ
1ؼ䵵(Load profile)
2ʵЧʵ(Instance efficiency hit ratios)
3Ҫ5ȴ¼(Top 5 wait events)
4ȴ¼(Wait events)
5ȴ
6ҪSQL(Top sql)
7ʵ(Instance activity)
8ļI/O(File I/O)
9ڴ(Memory allocation)
10ȴ(Buffer waits
1ؼ䵵(Load profile)
2ʵЧʵ(Instance efficiency hit ratios)
3Ҫ5ȴ¼(Top 5 wait events)
4ȴ¼(Wait events)
5ȴ
6ҪSQL(Top sql)
7ʵ(Instance activity)
8ļI/O(File I/O)
9ڴ(Memory allocation)
10ȴ(Buffer waits)
log file parallel write
db file scattered read
log file sync
db file sequential read
SQL*Net more data to client
ǰ4Ӱ쵽ݿܵ⣺
log file sync
ȴʱָȴoracleǰ̨commitrollbackɣʱȴʱҲȴLGWR̰һỰ־¼Ϣ־дϵ־ļС˵ǰ̨ڵȴ¼ʱLGWRͬʱҲڵȴ¼log file parallel write
ʲôȴ¼ĹؼڣԱȴ¼log file parallel writeȴ¼ƽȴʱ
l ǵĵȴʱ࣬ô־ļI/Oȴ¼Ҫ־ļI/O
l log file parallel writeȴ¼ƽȴʱСlog file syncȴ¼ĵȴʱ䣬ôһЩд־ĻcommitrollbackʱĵȴI/Oĵȴ־ļlatchlatch freeLGWR wait for redo copyȴ¼
V$SESSION_WAITУȴ¼3
P1 | ־Ҫд뵽־ļеĻдͬʱȷǷѾύұύϢʵжǰ˱ȴLGWRP1Ļд־ļΪֹ |
P2 | |
P3 |
ȴ¼ȴ¼ռ˱ȽϴıأԴ3е
1. LGWRʱھиõĴI/O粻Ҫ־ļRAID5Ĵ
2. ںִܶʱ̵ܶԿǽЩϲһԼύĴΪÿύҪȷص־д־ļʹύĴһַdz֮ЧļI/Oķ
3. ǷһЩȫʹNOLOGGINGUNRECOVERABLEѡԼ־ļIJ
Log file parallel write
ȴ¼ڵLGWR̴̨־д־Ϣϵ־ļʱֻ첽I/OʱLGWR̲ŻᲢдǰ־ڵij־ļLGWRָѭ˳дǰ־־ļLGWR̲òȴǰ־е־ļԱȫд꣬ˣȴ¼ĵȴʱ䳤̵Ҫ־ļڴ̵I/Oдٶ
ǵǰLGWRдٶȲ쵼ȴ¼ͨ鿴һЩ־صͳֵжǰLGWRǷЧʵ£ĿԿ redo writes, redo blocks written, redo write time, rdo wastage, redo sizeͳֵЩǺLGWRֱصһЩͳֵ
V$SESSION_WAITУȴ¼3
P1 | ڱд־ļе־ļ |
P2 | Ҫд־ÿ־ļ־block |
P3 | I/OҪдblockᱻֳɶηֱ |
ȴ¼ռñȽ϶ʱ䣬µ
1 UNRECOVERABLE/NOLOGGING־IJ
2 ڱ֤ͬʱ־ļǰ£־еijԱÿд־ļʱ
3 ڱ£Ҫڽռȱݵģʽ£Ϊڱռ䴦ȱģʽ»־ļ
4 ʹLogMinerLogical StandbyStreamsܹҪܵǰ£ʹͼ־Լ־IJ
5 ͬһ־ڵ־ļɢͬӲϣٲд־ļʱI/O
6 Ҫ־ļRAID5Ĵϣ÷豸ϡ
7 ˹鵵ģʽҪ鵵־ĿĵΪ־ĴϣI/O
Log2ܽ
ͨLog2ԼԭLog file syncģLatchҪǴ̺ʹϰ
1 ЩдģֻдӼдָ̣ݿⱾĽǶȣᵽûϰ߲һͼӿдЩȴʱ
a) ҪRAID5Ĵϱ־ļRAID5дٶڱȽ
b) ڰȫԱ֤Ļϣ־Աĸ
c) ͬһ־еIJͬԱڲͬĴϣдٶȡ
d) ԿԲNOLOGGING/UNRECOVERABLEIJʹЩѡlogIJ
e) й鵵ģҪ鵵ĺ־һ
2 ʹϰûϵĽcommitrollbackضһlog־д˿ͨһЩͳϢжǷÿε־дСͨûIJݸºϲһÿ־IJٶ־IJϵãLGWRдЧʡ
db file scattered read
һdzĵȴʱ䡣oracleӴ϶ȡblockĸٻĻоͻᷢȴ¼OracleһܹblockɳʼDB_FILE_MULTIBLOCK_READ_COUNDʱһȫɨFast Full Index ɨһ֡
V$SESSION_WAITУȴ¼ļ
P1 | oracleļ |
P2 | ļпʼȡblock |
P3 | blockʼҪȡblock |
һ3ͿԻͷѯڶȡݿĸȻIJŻSql䡣
ȴ¼ռıرȽͨ·
һ
ҳִȫɨFast Full indexɨSql䣬жЩɨǷDZҪģǷ˱Ƚϲִмƻе
oracle9iʼṩһͼV$SQL_PLANͨҵЩȫɨFast Full IndexɨSql䣺
ȫɨSQL
Select sql_text from v$sqltext t, v$sql_plan p Where t.hash_value=p.hash_value And p.operation=TABLE ACCESS And p.option=FULL Order by p.hash-value, t.piece; |
Fast Full index ɨSql
Select sql_text from v$sqltext t, v$sql_plan p Where t.hash_value=p.hash_value And p.operation=INDEX And p.option=FULL SCAN Order by p.hash-value, t.piece; |
Oracle8iݿ⣬ͨv$session_eventͼҵȴ¼ĽsidȻsidӦỰSQL
Select sid, event from v$session_event Where event=db file sequential read |
߿ͨ鿴ȡSQLִмƻǷȫɨFast Full Indexɨ裬ͨȡȡSQL
Select sql_text from Select *from v$sqlarea Order by disk_reads) Where rownum<10 |
ʱִмƻܺҲֶblockɨʱͨOracleݿĶblockI/OһDB_FILE_MULTIBLOCK_READ_COUNT,ʹþ㣻
Db_block_size * DB_FILE_MULTIBLOCK_READ_COUNT = max io size of system
ҲõԽԽã֮ǰҪ˽һӦõͣOLTP͵ģһ˵ȫɨ٣ʱ˱ȽϴήݿܣΪCBOijЩ»ΪblockȡCOSTȽϵʹӶѡȫɨ衣
ԲöԱʹ÷LRUĩ˵ȫɨFastFullIndexɨblock뵽Keepصȷе






