1、数据缓冲区命中率:

SQL> select value from v$sysstat wherename ='physical reads';

SQL> select value from v$sysstat wherename ='physical reads direct';

SQL> select value from v$sysstat wherename ='physical reads direct (lob)';

SQL> select value from v$sysstat wherename ='consistent gets';

SQL> select value from v$sysstat where name= 'db block gets';

这里命中率的计算应该是

x = physicalreads direct + physical reads direct (lob)

命中率 =100 - (physical reads - x) / (consistent gets + db block gets - x)*100

 

 

通常如果发现命中率低于90%,则应该调整应用可以考虑是否增大数据缓冲区

2、共享池的命中率:

oracle查询共享池的大小的命令为:

SQL> show parametershared_pool_size

或者

SQL> select * from v$sgastat where name= 'free memory' and pool = 'shared pool';


修改共享池大小:altersystem set share_pool_size=600M scope=both