Skip to Main Content

Database Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

How to see the real SHARED POOL being used ?

YockeeJun 27 2022 — edited Jun 27 2022

Hi,
I am having problem in determining the size of Shared Pool. I want to know the utilization of the shared pool as mention here : (https://docs.oracle.com/cd/B16240_01/doc/doc.102/e16282/oracle_database_help/oracle_database_sga_pool_wastage_shared_free_pct.html)
When I use query : "SELECT pool, sum(bytes)/1024/1024/1024 AS "Size (GB)" FROM v$sgastat WHERE pool = 'shared pool' GROUP BY pool;"
select sum(bytes)/1024/1024/1024 AS "Size (GB)" from v$sgastat where pool = 'shared pool'
It gives me : 2.7 GB.
But, when I use : "select component, current_size, max_size, granule_size, last_oper_type
from v$memory_dynamic_components;", it gives me 6,106,906,624 (I assume this is in Bytes, so it is equal to 5.6875 GB).
Questions are :
What are the differences between the 2 queries ? Why differ almost twice between v$sgastat and v$memory_dynamic_components
For each one, Which query should I use for what ?
For my case in determining the utilization of memory, which one should i use ?
This is confusing to me
Please help me.
Thanks

Comments
Post Details