First, determine if there is a real problem. Ask what interactive response time or report schedule this system must deliver, and determine what the performance actually is.
Any significant paging out, or significant use % of the paging space, indicates utilized memory. Given how slow storage is compared to DRAM, that is a symptom of not meeting the best response time.
Determine the system's memory use. Many of the host Virtual Memory Manager statistics you want are printed when running vmstat -v
For example, memory pages
is the total number of 4 KB pages on the system. minperm
is the minimum percentages of memory, reserved for file cache. Typically only a few %, but it won't be available for users. client pages
are in use from user programs. free pages
are, well, free, and you can basically count file pages
as free.
Usually databases have significant amounts of shared memory. Observe how many shared memory segments and their size with ipcs -am
As a sanity check, they should have non-zero number of attached processes, otherwise they are orphaned and not doing anything.
You didn't specify which database, not that it matters for the general methodology. I see Oracle processes in your topas output. Refer to the Oracle Performance Guide, in particular chapters regarding Configuring and Using Memory. Determine the size of the Oracle SGA.
If you determine that more memory is needed, it can be a relatively inexpensive upgrade. Particularly if using LPARs and there already is free memory in the frame to add to the partition.