2014년 6월 16일 월요일

SGA Tuning SQL문...[오라클개발자교육/오라클/ORACLE강좌/오라클교육잘하는곳/오라클교육추천/ORACLE실무교육/ORACLE/ORACLE교육/ORACLE학원/오라클실무교육]


set feedback off 
clear columns; 
spool sysstat.lst 
prompt ******************************************************* 
prompt *              LIBRARY CACHE TUNING                  * 
prompt ******************************************************* 
prompt 
select to_char(trunc(sum(reloads)/sum(pins)*100, 5),99.99999)||'%  
          (less than 1%)' "Library Cache MISS RATIO" 
from v$librarycache; 

prompt #  libary cache miss ratio is good if it is less than 1 -2 % 
prompt #  ratio를 늘리려면 shared pool size의 값을 증가 시켜야 한다. 


prompt 
prompt ******************************************************* 
prompt *            DICTIONARY CACHE TUNING                  * 
prompt ******************************************************* 
prompt 

select trunc(sum(getmisses)/sum(gets)*100, 5)||'%  (less than 9.8%)' 
"Data dictionary miss ratio " 
from v$rowcache; 
prompt 
prompt  #  data dictionary miss ratio is good if it is less than 9.8% 
prompt  #  ratio를 늘리려면 shared pool size의 값을 증가 시켜야 한다. 
prompt 


rem 계산의 편의를 위한 temporary table 생성 
create table buffer_cache 
( aa  number(10), 
 bb  number(10), 
 cc  number(10) 
); 

insert into buffer_cache (aa) select value from v$sysstat 
 where name = 'db block gets'; 
update buffer_cache set bb = (select value from v$sysstat 
 where name = 'consistent gets'); 
update buffer_cache set cc = (select value from v$sysstat 
 where name = 'physical reads'); 

prompt ******************************************************* 
prompt *              BUFFER CACHE TUNING                    * 
prompt ******************************************************* 
prompt 

select trunc((1 - (cc/(aa+bb)))*100, 5)||'%  (more than 60-70%)' "Buffer Cache hit ratio" 
from buffer_cache; 

prompt 
prompt # buffer_cache hit ratio is good if it is more than 60-70% 
prompt # 
prompt # ratio를 늘리려면 parameter file의 db_buffer_blocks의 값을 
prompt # 증가 시켜야 한다. 
prompt 


prompt ******************************************************* 
prompt *        INTERNAL SORT AND EXTERNAL SORT              * 
prompt ******************************************************* 
select name, value from v$sysstat 
where name in ('sorts (memory)', 'sorts (disk)'); 

prompt # MEMORY SORT에 비해 DISK SORT가 상대적으로 많으면 
prompt # SORT_AREA_SIZE의 크기를 늘려 주어야 한다. 

prompt ******************************************************* 
prompt *        ROLLBACK SEGMENT'S WAIT RATIO                * 
prompt ******************************************************* 
column miss_ratio format a20 
select name "rollback segment name", 
      trunc(waits/gets*100, 5)||'%' miss_ratio 
from v$rollstat, v$rollname 
where v$rollstat.usn = v$rollname.usn; 

prompt 
prompt # MISS RATIO가 1~2% 이하 이어야 한다. 
prompt # 1~2%보다 크면 ROLLBACK SEGMENT의 갯수를 늘려주어야 한다. 
prompt 

prompt ******************************************************* 
prompt *            REDO LOG FILE'S WAIT RATIO              * 
prompt ******************************************************* 
select value "Redo log request" 
from v$sysstat 
where name = 'redo log space requests'; 

prompt 
prompt ******************************************************* 
prompt *            FREE LIST'S WAIT RATIO                  * 
prompt ******************************************************* 
prompt 

select trunc(a.count/(b.aa + b.cc)*100, 5)|| 
                      '%' "Free list wait ratio(1%이하)" 
from v$waitstat a, buffer_cache b 
where a.class = 'free list'; 

drop table buffer_cache; 
clear columns; 
spool off 
exit 
  
  
Previous Article : Disk I/O tuning...  
Next Article : 현재 DataFile(TableSpace)의 Free 영역을 확인하는 SQL  

오라클자바커뮤니티교육센터, 개발자전문교육, 개인80%환급 
www.oraclejavacommunity.com


평일주간(9:30~18:10) 개강
(6/23)[기업100%환급]자바기초에서 JDBC, Servlet/JSP까지 
(6/23)[기업100%환급]Spring ,MyBatis,Hibernate실무과정
(6/23)[기업100%환급]SQL기초에서 Schema Object까지
(6/30)[기업100%환급]PL/SQL,ORACLE HINT,TUNING
(6/30)[기업100%환급]안드로이드개발자과정
(7/07)[기업100%환급]C#4.0,WinForm,ADO.NET프로그래밍
(7/07)[채용예정교육]오라클자바개발잘하는신입뽑기프로젝트,교육전취업확정

평일야간(19:00~21:50) 개강
(6/17)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(6/18)C#,ASP.NET마스터
(6/19)웹퍼블리싱 마스터
(6/19)Spring3.X, MyBatis, Hibernate실무과정
(6/24)안드로이드개발자과정
(6/24)MyBatis3.X, Hibernate4.X ORM실무과정
(6/26)SQL초보에서실전전문가까지
(7/02)자바웹(JSP,Spring,MyBatis,XPlatform)프로젝트과정

주말(10:00~17:50) 개강
(6/21)Spring3.X, MyBatis, Hibernate실무과정
(6/21)MyBatis3.X, Hibernate4.X ORM실무과정
(6/21)자바기초에서JSP,Ajax,jQuery,Spring3.2,MyBatis까지
(6/28)SQL초보에서 Schema Object까지
(6/28)안드로이드개발자과정
(6/28)개발자를위한PLSQL,SQL튜닝,힌트
(6/28)실무예제로 배워보는 jQuery(개발자/디자이너를위한)
(6/28)자바웹(JSP,Spring,MyBatis,XPlatform)프로젝트과정
(7/13)C#,ASP.NET마스터

주말저녁(18:30~22:20) 개강
(6/28)JAVA,Network&WEB&Framework
(6/28)SQL기초에서실무까지

댓글 없음:

댓글 쓰기