Tuesday, April 12, 2016

Installing Oracle 12c R1 Database Software on Linux 6

This document explains how to install Oracle 12cR1 Database software on Oracle Linux 6. At the time of writing this document, latest 12c version is 12.1.0.2 which can be downloaded from My Oracle Support using patch search for patch 17694377 (Disk 1 and Disk 2 are needed for Oracle Database software). Otherwise you can also download 12.1.0.1 from www.oracle.com
. For this article, I have extracted the downloaded software under /u02/softwares directory.
You may also find following related documents interesting.
1)
Make sure you have entries in the /etc/host file for the name resolution.
127.0.0.1   localhost localhost.localdomain localhost
192.231.231.40 salman1.salman.com salman1

2)
Edit /etc/selinux/config and set value for SELINUX to either “permissive” or “disabled”
           SELINUX=permissive

3)
As root user, configure Shared Memory File System. Add following line in /etc/fstab file for shared memory file system. Modify the value of “size” based on the amount of memory you will be using for your SGA
tmpfs                                   /dev/shm                tmpfs   rw,exec,size=8g        0 0

4)
Disable the firewall
[root@salman1 ~]# service iptables stop
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]

[root@salman1 ~]# chkconfig iptables off


5)
Reboot the host

6)
We can perform automatic configuration of the host using “yum” command. If you want to do manual configuration, skip this step and go to next step (Step 7).
Automatic configuration would perform following tasks
- Installation of required RPM packages
- Setup kernel parameters in /etc/sysctl.conf file
- Creation of OS groups (oinstall, dba) and OS user (oracle)
- Setting limits for installation user “oracle”

For Oracle Linux, follow the steps mentioned in the following documents to access the online yum repository.
http://public-yum.oracle.com/

As root user, execute following command to perform all prerequisites automatically.
[root@salman1 ~]# yum install oracle-rdbms-server-12cR1-preinstall –y

As already mentioned, above command will install all required packages which are needed for grid infrastructure and/or RDBMS software installation. If you also plan to install a 32-bit client on this x86_64 server, you would also need to install 32-bit version of these RPM packages manually.
compat-libstdc++-33-3.2.3-69.el6.i686
glibc-2.12-1.7.el6 (i686)
glibc-devel-2.12-1.7.el6.i686
libgcc-4.4.4-13.el6 (i686)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6.i686
libXext-1.1 (i686)
libXtst-1.0.99.2 (i686)
libX11-1.3 (i686)
libXau-1.0.5 (i686)
libxcb-1.5 (i686)
libXi-1.3 (i686)
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)
nfs-utils-1.2.3-15.0.1
If you want to install form Oracle Linux installation media, use “rpm -i” command to install the packages.
Automatic configuration also sets the required kernel parameters in /etc/sysctl.conf file and also sets OS limits for user oracle.
Automatic configuration would create default OS groups i.e. oinstall and dba (with group ID 54321 and 54322 respectively), and OS user (oracle) with user ID 54321. Reset the password of oracle user
Set passwords for oracle user
[root@salman1 ~]# passwd oracle
If you have performed this step; skip next 4 steps (7, 8, 9 and 10)

7)
Install following RPM packages (or latest version) from either yum repository or from Linux 6 media
binutils-2.20.51.0.2-5.11.el6 (x86_64)
compat-libcap1-1.10-1 (x86_64)
compat-libstdc++-33-3.2.3-69.el6 (x86_64)
compat-libstdc++-33-3.2.3-69.el6.i686
gcc-4.4.4-13.el6 (x86_64)
gcc-c++-4.4.4-13.el6 (x86_64)
glibc-2.12-1.7.el6 (i686)
glibc-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6.i686
ksh
libgcc-4.4.4-13.el6 (i686)
libgcc-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6 (x86_64)
libstdc++-4.4.4-13.el6.i686
libstdc++-devel-4.4.4-13.el6 (x86_64)
libstdc++-devel-4.4.4-13.el6.i686
libaio-0.3.107-10.el6 (x86_64)
libaio-0.3.107-10.el6.i686
libaio-devel-0.3.107-10.el6 (x86_64)
libaio-devel-0.3.107-10.el6.i686
libXext-1.1 (x86_64)
libXext-1.1 (i686)
libXtst-1.0.99.2 (x86_64)
libXtst-1.0.99.2 (i686)
libX11-1.3 (x86_64)
libX11-1.3 (i686)
libXau-1.0.5 (x86_64)
libXau-1.0.5 (i686)
libxcb-1.5 (x86_64)
libxcb-1.5 (i686)
libXi-1.3 (x86_64)
libXi-1.3 (i686)
make-3.81-19.el6
sysstat-9.0.4-11.el6 (x86_64)
nfs-utils-1.2.3-15.0.1
unixODBC

Example (yum)
[root@salman1 ~]# yum install glibc

Example (Linux Media)
[root@salman1 ~]# rpm -i glibc

Example (Check after install)
[root@salman1 ~]# rpm -q glibc
glibc-2.17-55.el7.x86_64

8)
Edit /etc/sysctl.conf add following entries to set kernel parameters
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 4294967296
kernel.shmmax = 4398046511104
kernel.panic_on_oops = 1
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

Execute following command after adding above lines
/sbin/sysctl -p

9)
As user root, add OS  groups and users.
Add groups
[root@salman1 ~]# groupadd -g 54321 oinstall
[root@salman1 ~]# groupadd -g 54322 dba
[root@salman1 ~]# groupadd -g 54323 oper

Add users
[root@salman1 ~]# useradd -u 54321 -g oinstall -G dba,oper oracle

Set passwords for oracle user
[root@salman1 ~]# passwd oracle
10)
Make following entries in /detc/security/limits.conf to set the limits.
# Oracle user
oracle soft nofile 1024
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
oracle soft stack 10240
oracle hard stack 32768
oracle hard memlock 134217728
oracle soft memlock 134217728

11)
Log in as oracle user and add environmen variables in .bash_profile file.
ORACLE_SID=db12c; export ORACLE_SID
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=/u01/app/oracle/product/12.1.0/db; export ORACLE_HOME
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib; export CLASSPATH
export TEMP=/tmp
export TMPDIR=/tmp

12)
Log in as oracle user using Linux desktop, or you may also use any X server software.

13)
Initiate installation by executing ./runInstaller from the directory where software was unzipped.
$ cd /u02/softwares/database
$ ./runInstaller
Click Next

14)
Click Next 

15)
I selected “Install database software only”. You may also select “Create and Configure a database” if you want to create a database during the installation process. Otherwise you can create an Oracle database using DBCA, after the installation. 
Click Next

16)
Since this is a non-RAC installation, select “Single instance database installation”, and click Next

17)
Click Next

18)
Click Next (or select appropriate edition you want to install)

19)
Change directories according to your requirement and click Next

20)
Click Next. After this screen, next step is “Prerequisite Checks”, resolve any issues if prerequisite checks list any problem by stopping at prerequisite checks screen

21)
Click Install

22)
Monitor installation progress.

23)
Execute “root.sh” as root user when prompted. If this is first ever oracle software installation on this server then you would see a prompt that lists 2 scripts to be executed as root, orainstRoot.sh and root.sh. Execute script(s) as root and click OK.

24)
Installation is successful. Click Close

No comments:

Post a Comment

Popular Posts - All Times