Windows – Issues setting up Oracle 18c XE on Windows Server 2012 r2

oracle-18cwindows-server

I've been running into some problems getting my Oracle installation up and running on Windows Server 2012 r2 at work. Initially, I had installed Oracle on my Win10 laptop for test purposes – I connected to it using Toad for Oracle and had no problems.

However, after installing on Windows Server 2012 r2 I noticed that there were no control files and/or database files in the %ORACLE_BASE%\oradata\XE directory. In addition, I noticed that my listener.ora file was missing an entry for the XE service instance – once this was added, I could connect via SQLPlus but then the database could not be mounted because there were no control files. I even tried using DBCA to create a new database but ran into invalid memory parameter issue.

I'm starting to wonder if 18c is even compatible with Server 2012 r2 even though the documentation says it is – am I missing some configuration? Any help would be greatly appreciated – I've been trying to figure this one out for the last few days. Thanks.

Best Answer

So I ended up accidentally solving this problem...

After trying to setup a new database in DBCA (Database Configuration Assistant), I went to delete the newly created one only to realize that I had accidentally deleted the "XE" instance. I went ahead and deleted the new instance I had attempted to create as well and then went back into DBCA and created a new instance with SID of "XE" (if I tried with a different SID Oracle XE would complain about the restriction of one instance per install. I also adjusted the sga_target & pga_aggregate_target values to sum to 2GB (another restriction on XE) and lowered the processes value (changed from initial of 4400 to 320 since that is why my laptop used and it worked) and the instance was recreated with all the necessary control & data files.

In summary:

When doing a fresh install of Oracle on Windows Server 2012 r2 (may work for other supported Win Server OS', but I only have 2012 r2 to test), if the default instance does not have the needed control and/or data files do the following (using Advanced Configuration in DBCA):

  1. Delete the default instance (this was 'XE' in my case). If there are any other instances you attempted to create, delete them as well.
  2. Create a new instance using the default SID (this was 'XE' in my case) - if needed, set it as a container databases for any pluggable databases you create in the future.

    If using Oracle 18c XE, ensure that the sga_target and pga_aggregate_target values sum to the restricted memory limits (2GB) set by XE (my values were sga_target=1536M & pga_aggregate_target=512M).

    Set processes value to an appropriate value. I'm not sure if this was necessary but , I kept getting ORA-47500 if this was not lowered after I had adjusted sga & pga values.

  3. Create pluggable databases for your instance as needed.

Like I mentioned this solved my issue - please feel free to correct this if I made any incorrect assumptions. Hopefully this will help others if they run into a similar situation - I'm assuming these directions will be tweaked depending on what server OS the install will be accomplished on.