I have a question. If I have a machine with 4GB RAM where Glassfish, Apache and Oracle 11GXE is running then how to make sure that database is using 1GB RAM as per the licensing terms?
Could please help me understand?
You won't be able to control actual RAM / physical mem usage (which is under OS control), but I believe XE is limited in instance memory parameter settings, e.g. memory_target.
You should try increasing memory settings over 1024 MB.
However, total and actual memory usage for oracle processes/threads etc. may vary, besides the licensing view.
Thank you for the reply.
So how is oracle going to find whether I am using more than 1GB RAM?
I have a system for production usage and I want to make sure that I am not violating license terms.
Could you please help me?
Neither one. A default XE install uses an spfile, parameter changes can be done in memory, or to the spfile, or both.
Some parameters require a shutdown and restart to take affect, increasing memory_target is one of those. The safer way, in case the spfile gets into a state that prevents startup, like for XE increasing memory_target above the allowed limit, create a backup that can be used as a fallback.
conn /as sysdba;
create pfile='c:\temp\initXE.ora' from spfile;
alter system set memory_target = 1200M scope=spfile;
... -- whoops startup will not work with that parameter value
shutdown immediate -- make sure its completly down
... -- will see an error about database not open but that is normal
-- startup with the fallback init file
-- fix the instance spfile
create spfile from pfile='c:\temp\initXE.ora';
-- make sure the startup works this time
If linux is your host, adjust file paths appropriately, of course.
If you don't have a fallback init.ora file one can be created by going into the alert log and finding your most recent good startup. All non-default parameters are logged to the alert file at every startup, in a section starting with "non default parameters" or something similar. Just grab those lines and put them in a <drive:>\path\initXE.ora or /<path>/initXE.ora file.