- Last Updated: Sunday, 16 February 2014 09:37
This article provides some of the issues encountered during an installation of Oracle 10G on Solaris 10. This article is NOT meant to be an installation guide, but rather document some of the "gotchas" that I experienced during my most recent installation of Oracle 10g on Solaris. I performed this initial installation on a Sun V120 w/ 4GB of RAM, and dual 72GB drives and Solaris 10 6/06. The installation that I was performing was geared towards supporting an installation of Lucent Technologies VitalQIP 7.0 product.
Issue #1: Choosing the appropriate Sun Solaris software group to install
My first mistake was made in NOT choosing to simply install the Sun Solaris software group "Entire Solaris Software Group". Instead i tried doing a minimal installation and then attempting to add the other required software packages. I really didn't spend any time on this and instead, opted the easy route. I installed the "Entire Solaris Software Group" because I knew that other software install groups didn't lay down the /usr/ccs/bin/make that is a sun provided make utility. During an installation of Oracle 10g, it performs a re-linking of the client libs based upon what is selected for the installation. The first pass, it failed because it couldn't find the make program. I tried installing GNU make which installs to /usr/local/bin. I created a symbolic link in /usr/css/bin/make pointing to it, but this didn't work either. Lesson learned. Install more software than you think you will need, if you are looking to save time and energy during the installation of Solaris, Oracle, and ultimately QIP. This is only a recommendation. I am certain that one could figure out how to do a minimal software installation and add only those required packages to get the installation to work properly.
Issue #2: Setting kernel parameters in Solaris 10
Configuring kernel parameters has changed dramatically in Solaris 10. Not all parameters are configured in /etc/system as they were with Solaris 8 and 9. The first parameter that I had to set was the noexec_user_stack=1 parameter. This I figured out MUST STILL be set in the /etc/system kernel parameters file. Simply append that file with 'set noexec_user_stack=1' and reboot the system.
The next two parameters that must be set are for the Shared Memory Segements and the Semaphore IDS. I'm still not really sure if i have it optimally set, but the method that I used to set it seems to have worked. First, I set both parameters for the user root by typing the following:
prctl -n project.max-shm-memory -v 4gb -r -i project user.root
prctl -n project.max-sem-ids -v 256 -r -i project user.root
The settings took and to ensure they took I was able to issue the following commd(s) to view the settings:
prctl -n project.max-shm-memory -i project user.root
prctl -n project.sem-ids -i project user.root
I still had issues, so i made the same settings for an additional user based upon some readin g on the internet. So, i created another project/user and made the same kernal parameter changes to that user as well. Here is the sequence of commands that I issued to make that change:
projadd user.oracle projmod -s -U oracle -K "project.max-shm-memory=(priv,4gb,deny)" user.oracle
projmod -s -U oracle -K "project.max-sem-ids=(priv,256,deny)" user.oracle
At first I made that command w/o the -s. I believe that is to make it save it or make it static. Once issued with the -s, I was able to verify that the /etc/project file was written to with the oracle user. So, this notion of zones, projects, and users is new to me. I have not spent any time learning this and how it all works, but figured I would jot down what steps I took that made my installation ultimately successful. (possibly continued...)
Issue #3: Oracle Passwords
I encountered a small issue that I forgot existed in Oracle. To set up my first database, I opted to use the DBCA assistant in creating the database, instead of during the initial installation of the Oracle software. I chose this route b/c I wanted to save a template and the Shell/SQL scripts to be able to re-create it any later time. During the DBCA wizzard, it asks for the password you want to establish for the built-in accounts, SYS, SYSTEM, DBSNMP etc. I chose a password that started with a number and the wizzard took my input and the program continued to perform the installation and creation of the scripts. Once everything was done and the database was created, I found i couldn't log into the Oracle EM web-based interface. I had to use my still-open SQL session to alter the passwords and set them to alpha-numeric passwords that did NOT start with a numeric. Once I figured that out, everything worked great.