To begin, while I've worked with Oracle for many years, I'm far from a DBA. (and it'll take probably a few weeks before I can get one assigned to look at this.)
I've got an Oracle instance that is consuming way more ram then is set with the memory_target
and memory_max_target
parameters.
SQL> show parameter memory_target;
NAME TYPE VALUE
------------------------------------ ----------- ------
memory_target big integer 8000M
SQL> show parameter memory_max_target;
NAME TYPE VALUE
------------------------------------ ----------- ------
memory_max_target big integer 9024M
However Oracle is taking up about 11GB of ram at the moment.
AMM is turned on
SQL> show parameter pga_aggregate_target
NAME TYPE VALUE
------------------------------------ ----------- -------
pga_aggregate_target big integer 0
SQL> show parameter sga_target
NAME TYPE VALUE
------------------------------------ ----------- -------
sga_target big integer 0
But oracle is still being a memory hog
When I reduced memory_target
and memory_max_target
to the current values (down by 2GB each) the only thing that changed was the primary ORCL
instance reduced it's memory footprint, but the RCAT
instance took up the available freed ram.
The machine has been rebooted with no change in memory consumption.
I'm assuming RCAT here is the recovery catalog, but what would cause it to consume higher memory than is assigned via the memory target params?
Is there another area I should be looking at? (i.e. is memory for the recovery catalog instance controlled by another parameter?)
What additional information would be helpful in narrowing down the issue?
- Windows 2012R2
- 16GB assigned ram
- Oracle 18C
- Approx 130 sessions with very little activity (basically idle)