Hi people,
I am using Oracle 10.2.0.1 Standard Edition in all instances, on Redhat 5
I just depared with an environment that have 7 instances in a server. I have never seem something like that. There environments are Development/Homologation.
The thing is, i think that the DBA who did this [not me], configurated the thing wrong:
Cpu(s): 0.2%us, 0.1%sy, 0.0%ni, 99.7%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 65958496k total, 65639792k used, 318704k free, 564780k buffers
Swap: 67993592k total, 1109024k used, 66884568k free, 63224848k cached
[oracle@xxxx ~]$ free -m
total used free shared buffers cached
Mem: 64412 64094 317 0 551 61743
-/+ buffers/cache: 1799 62612
Swap: 66399 1083 65316
As you can see, all the memory is in use, and swap is being used a lot.
I also can say that the Oracle background processes are the greater consumer of memory here:
ps -e -orss=,args= | sort -b -k1,1n [Top memory, desc order)
505124 ora_j000_T1HOM
524204 ora_j000_T1DEV
617044 ora_mmon_DBD
824432 ora_mman_DBHd
875132 ora_smon_DBDd
955024 ora_smon_DBHd
2237476 ora_dbw2_DBDd
2336208 ora_dbw1_DBDd
2351732 ora_dbw2_DBHd
2353792 ora_dbw1_DBHd
2439864 ora_dbw3_DBHd
2454024 ora_dbw0_DBHd
2454088 ora_dbw0_DBDd
2516736 ora_dbw3_DBDd
The tmpfs was mounted with half memory available:
[oracle@xxxx ~]$ df -h
Filesystem Size Used Avail Use% Mounted on
tmpfs 32G 0 32G 0% /dev/shm
cat /etc/sysctl.conf
# Controls the maximum shared segment size, in bytes
kernel.shmmax = 68719476736
Each instance has:
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
sga_max_size big integer 4768M
sga_target big integer 4768M
I know that isn't recommended by Oracle using multiple instances in a database. I just need to free more memory on this environment, need to stop swapping.
Do i have to alter parameters at sysctl.conf , or resize sga_max_size for each database ?
I would appreciate some help.
Thanks in advance.