I had installed Oracle Database 11g on Solaris 10 few days back. I thought of documenting the steps for easy reference. Please find below steps for the same
Installation Pre-Requisite
Refer to Oracle Database Installation Guide 11g Release 1 (11.1) for Solaris Operating System for checking Hardware and Software Requirements.
User Creation and Environment Settings
1)Create groups for Oracle account
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">#groupadd oinstall #groupadd dba #groupadd oper</span>
2)Create Oracle Default Home directory
<span style="font-family: arial,helvetica,sans-serif; font-size: small;"># mkdir /export/home # mkdir /export/home/oracle</span>
3)Create Oracle user
<span style="font-family: arial,helvetica,sans-serif; font-size: small;"># useradd -g oinstall -G dba -d /export/home/oracle -s /usr/bin/bash oracle # chown oracle:oinstall /export/home/oracle</span>
4)Create Project for Oracle for setting the kernel parameters
In case of Solaris 10, you can use projects to configure the kernel parameters instead of /etc/system file. This can be done as following
<span style="font-family: arial,helvetica,sans-serif; font-size: small;"># projadd -U oracle -K "project.max-shm-memory=(priv,4g,deny)" oracle # projmod -sK "project.max-sem-nsems=(priv,256,deny)" oracle # projmod -sK "project.max-sem-ids=(priv,100,deny)" oracle # projmod -sK "project.max-shm-ids=(priv,100,deny)" oracle</span>
There are many more ways of creating project entries such as group.group-name or user.user-name. For more details refer to Solaris Administration documents.
Update
Last three settings made by projmod command are not required as these values are lower than the default. This was pointed by Mike Madland and he also gave a Sun documentation link
http://docs.sun.com/app/docs/doc/819-2724/6n50b0795?l=en&a=view#chapter1-33
You can check the values for max-sem-ids and max-shm-ids with this command:
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">prctl -n project.max-sem-ids -i task `ps -o taskid= -p $$`</span>
5)Create .bash_profile for Oracle user
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">#Oracle Environment Settings TMP=/tmp; export TMP TMPDIR=$TMP; export TMPDIR ORACLE_BASE=/u03/app/oracle; export ORACLE_BASE ORACLE_HOME=$ORACLE_BASE/product/11.1.0/db_1; export ORACLE_HOME ORACLE_SID=TESTDB11G; export ORACLE_SID PATH=$PATH:/usr/local/bin:/usr/ccs/bin:/usr/sfw/bin:$ORACLE_HOME/bin</span>
Now Set the Display to a X-windowing enabled system.
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">$ export DISPLAY=192.168.4.47:0.0</span>
Also allow the host to accept the connection by
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">$xhost +</span>
Oracle Software Installation
Go to the Oracle dump location and run runInstaller as Oracle user
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">$./runInstaller</span>
This will open Oracle Universal Installer(OUI) screen. If Oracle Universal Installer is not displayed, then ensure DISPLAY variable is set correctly. Select “Software only” option and install the software. If any of the pre-requisite’s are not met , then installation will fail. You would be required to make necessary changes to proceed.
Database Creation
We will be using ASM for the Database files. For this we need to perform some configuration
1)Prepare the Raw device for using as ASM Disks
<span style="font-family: arial,helvetica,sans-serif; font-size: small;"># ls -l total 0 crw------- 1 root root 125, 1 Jun 20 10:39 1</span>
Disk should be owned by Oracle user and should have permission set to 660
<span style="font-family: arial,helvetica,sans-serif; font-size: small;"># chown oracle:dba 1 # chmod 660 1 - # ls -ltr total 0 crw-rw---- 1 oracle dba 125, 1 Jun 20 10:39 1</span>
2)Configure CSS Service
In case of Solaris 10, we need to use Service Management Facility (SMF) for configuring CSS service else it will not start. Refer to my earlier post for this step i.e 11.1.0.6 ASM installation on Solaris fails -II
3) Configure ASM Instance
a)Go to $ORACLE_HOME/bin
b)Execute dbca from this directory (ensure dbca is properly set)
<span style="font-family: arial,helvetica,sans-serif; font-size: small;">$./dbca</span>
c) Select Configure ASM Instance option. This will create ASM instance for you. After this you can create Diskgroups using GUI or else use sqlplus to do the same.
4)Now continue creating database normally and enter Diskgroup Name after selecting Oracle Managed files as database file location.
While you navigate through GUI screens, it will prompt you to Specifying Security Settings
– Keep the enhanced 11g security settings(recommended)
– Revert to pre 11g settings
Select the 11g settings which will enable Auditing by default and also enable Case sensitive passwords with Stronger password hashing algorithm.
I have not discussed GUI screens for DBCA and OUI in this article. These are pretty much standard screens. In case you need more information about it, then you can refer to Oracle 11g Install guide for Solaris
Nice article. Just a note on the last three project settings:
# projmod -sK “project.max-sem-nsems=(priv,256,deny)” oracle
# projmod -sK “project.max-sem-ids=(priv,100,deny)” oracle
# projmod -sK “project.max-shm-ids=(priv,100,deny)” oracle
These aren’t actually needed since these values are lower than the default. Oracle runs fine with the default values.
Here’s a link to the Sun documentation for these values: http://docs.sun.com/app/docs/doc/819-2724/6n50b0795?l=en&a=view#chapter1-33
You can check the values for max-sem-ids and max-shm-ids with this command:
prctl -n project.max-sem-ids -i task `ps -o taskid= -p $$`
Thanks Mike!! I have updated the article with the above information.
Dear all
can i install oracle 11g on OpenSolaris x86? if so can you refer me to any instruction doc.?
best regards and thanks
thaar al_taiey
Thaar,
11g has not been released for Solaris x86 (32 bit) platform, so answer would be NO, you cannot install 11g on OpenSolaris x86.
-Amit
Any tips/documents/”how I did it” for Oracle 11g RAC clusterware/VCS on Solaris (NFS/NAS etc)?
Looking for this.
Kartik Vashishta
I haven’t got a chance to install RAC on Solaris yet. Try searching in google. I found following with this search string “11g rac installation solaris”
http://www.emc.com/collateral/software/white-papers/h6020-implement-oracle-sun-scge-srdf-wp.pdf
http://oracle.ittoolbox.com/groups/technical-functional/oracle-db-l/oracle-11g-rac-on-solaris-10-using-nfs-and-fcp-2147317
– Amit
Hi to everybody,
is possible to install Oracle 11g on Solaris x64(intel) platform?
Thank you!
Ritorujon,
11Gr1 64-bits is currently not certified with sun x-86 64 bits.
Cheers
Amit
We have Oracle database running fine on Solaris 10
I am trying to install OID on the same machine.
When accepting Identity Management and Repository Option I get a popup saying
Dependencies. The following kernel parameters do not meet the recommended values for database installation.
The value of semmni is less than 100, and 7 more
What do I need to change
I have done as suggested above.
Managed to solve this problem
Taken from http://download.oracle.com/docs/cd/B14100_14/relnotes.1012/relnotes/install.htm
3.1.1.3 /etc/system Requirements for Installation
As part of the pre-requisite checks conducted by Oracle Universal Installer prior to installation of Oracle Application Server, kernel parameters are inspected in the /etc/system file. However, the kernel values described in the Oracle Application Server 10g Installation Guide are not used on the Solaris 10 system.
As a workaround, make changes to kernel parameter values in the /etc/system file as indicated in the Requirements chapter of the Oracle Application Server 10g Installation Guide prior to installation of Oracle Application Server. Following installation of Oracle Application Server on the Solaris 10 system, remove the changes you made to the values specified in the /etc/system file.
In summary, the changes made to the kernel parameters in the /etc/system file should be temporary and should be undone after installation of Oracle Application Server is completed.
Glad to hear your issue is resolved..thanks for sharing the solution also 🙂
Cheers
Amit
Hi, I’m newby in unix machines and i need some help to install oracle 11g. I have some questian i hope somebody could help me:
1.- How do i create .bash_profile in the step 5?
2.- $ means that the user is oracle and # the user is root?
3.- My installation files owner is root, do I have to change the permissions to execute runInstaller with oracle user?
Thanks in advance!
Borja,
Please find response to your queries below
1. You need to create a file in oracle user home directory i.e /home/oracle.
$vi .bash_profile
copy the contents and save the file
2. Yes.
3. Yes , you will have to change the permissions. Suppose your installation files are in folder dump, then do following
#chown -R oracle:oinstall dump
Meanwhile would recommend you to start reading unix stuff. It’s pretty cool and I hope you will enjoy the experience 🙂
Cheers
Amit
I got it Amit! I also install a X Server in my windows machine to run the installer…
thanks again!
Hi again!
I want to startup oracle automatically when my solaris machine starts, i have tried some scripts from some webs but they didn’t work, any reference or help for this issue?
Merci!
Have you followed mentioned in docs
http://download.oracle.com/docs/cd/B28359_01/server.111/b32009/strt_stp.htm#CFAHAHGA
cheers
Amit
Hi !!!! I’m on it now, i’m enabling the rshd deamon
cheers!!
Hi,
Has anyone tried to install 11gR2 RAC on IBM AIX? Can the binaries be installed locally or is ACFS a must?
Thanks
GG
Geetha,
You do not require ACFS for installing oracle binaries. Moreover I think ACFS is only available on OEL5 and RHEL5 as of now (i.e 11.2.0.1) and not available on AIX
Cheers
Amit
This is very straight forward and clear.It has become easy when compared to referring the looong docs.
hi,
why we have to create three groups? can any one explain me about use of each group please?
Thanks
Tanvir,
It’s not mandatory for you to have all 3 groups. But at times you want some users who can make sysdba connection to database and not allow them to patch oracle installation. You can read install guides for detailed information
Hi Amit,
really its great response, bcoz i just new with oracle. Thanks…
how different is it to install Oracle 11g on Solaris 10 non-global zone? is there any handy dandy lionk / blog post describing steps