How to Allocate Memory to a Process on a Server
A database needs to expend some of its memory on the processes that keep the database running. Oracle databases provide processes with memory from the database's system global area, which is shared by multiple processes. Each process also has the exclusive use of a portion of dedicated memory from the program global area. When you install your database software, it sets the SGA and PGA automatically, based on the amount of physical memory in your system. If you decide the allotted memory isn't sufficient, you can change it, up to a point.
Instructions
-
-
1
Access Oracle's Database Home Page. Click on the "Administration" icon, then the "Memory" icon. This will show you the "SGA Target" and "PGA Aggregate Target," which control memory allocation.
-
2
Click on "Configure SGA" in the Tasks list. Add the number of megabytes to the SGA Target that you want to increase it by and click "Apply Change." The total SGA-alloted memory will increase, giving the database more to share between the various processes.
-
-
3
Click on the "PGA Area" link, change the PGA allocation and apply the change. As with the SGA, Oracle will decide for itself how much of the added memory to apply to each process.
-
4
Apply the changes, then shut down and restart the database to make them take effect.
-
1
Tips & Warnings
If you want to allocate more memory to processes because you've added more physical memory to the computer, increase both SGA and PGA but keep the same size ratio between them.
If you receive an "insufficient memory" error message that indicates an SGA or PGA problem, that's another reason to increase the allocated memory. If you're not receiving memory-error messages and haven't increased the physical memory, you're better off not overruling how the database chooses to allocate memory.
If you only change the PGA allocation, you don't need to shut down and restart the database to make it take effect.
The maximum memory you can allot to SGA and PGA is 1GB. If the combined total exceeds that, you'll get an error message when you restart the database.