Anda di halaman 1dari 13

How I Simplified Oracle Database 12c and

11g Installations on Oracle Linux 6


by Ginny Henningsen; updated by Michele Casey

How to simplify the installation of Oracle Database 12c or 11g on Oracle Linux 6 by
installing the oracle-rdbms-server-12cR1-preinstall or oracle-rdbms-server-11gR2-
preinstall RPM package, which automatically performs a number of tasks, such as
installing required software packages, resolving package dependencies, and modifying
kernel parameters.

Published September 2012 (updated July 2013)

Introducing the oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-


server-11gR2-preinstall RPM for Oracle Linux

Before installing Oracle Database 12c or 11g on a system, you need to preconfigure the
operating environment since the database requires certain software
Want to comment on this
packages, package versions, and tweaks to kernel parameters. (Be
article? Post the link
sure to review the appropriate Oracle Database installation guide to
on Facebook's OTN
familiarize yourself with hardware, software, and operating system
Garage page. Have a
requirements.)
similar article to share?
Bring it up on Facebook
or Twitter and let's
discuss.
Note: This article applies to Oracle Linux 6. A previous article, "How
I Simplified Oracle Database Installation on Oracle Linux," covered performing a similar task on
versions of Oracle Linux 5.

On Oracle Linux, I discovered that there is a remarkably easy way to address these installation
prerequisites: First, depending on your database version, install either the RPM package called
oracle-rdbms-server-12cR1-preinstall or oracle-rdbms-server-11gR2-preinstall.
This RPM performs a number of preconfiguration steps, including the following:

Automatically downloading and installing any additional software packages and specific
package versions needed for installing Oracle Grid Infrastructure and Oracle Database 12
c Release 1 (12.1) or 11g Release 2 (11.2.0.3), with package dependencies resolved via
yum or up2date capabilities.
Creating the user oracle and the groups oinstall (for OraInventory) and dba (for
OSDBA), which are used during database installation. (For security purposes, this user has
no password by default and cannot log in remotely. To enable remote login, please set a
password using the passwd tool.)

Modifying kernel parameters in /etc/sysctl.conf to change settings for shared


memory, semaphores, the maximum number of file descriptors, and so on.

Setting hard and soft shell resource limits in /etc/security/limits.conf, such as the
locked-in memory address space, the number of open files, the number of processes, and
core file size.

Setting numa=off in the kernel for x86_64 machines.

Note that oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-


preinstall parses the existing /etc/sysctl.conf and /etc/security/limits.conf files and
updates values only as needed for database installation. Any precustomized settings not related to
database installation are left as is.

The oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-


preinstall RPM packages are accessible through the Oracle Unbreakable Linux Network
(ULN, which requires a support contract), from the Oracle Linux distribution media, or from the
Oracle public yum repository. Thus, whether or not your system is registered with ULN to access
Oracle patches and support, you can use oracle-rdbms-server-12cR1-preinstall and
oracle-rdbms-server-11gR2-preinstall to simplify database installation on Oracle Linux.
In addition, the Oracle public yum repository now includes all security and bug errata, ensuring
systems are secured and stable with the latest security updates and bug fixes.

Installing the oracle-rdbms-server-12cR1-preinstall or oracle-rdbms-server-


11gR2-preinstall RPM

The remainder of this article steps through the procedure that I used for installing oracle-
rdbms-server-11gR2-preinstall on Oracle Linux via the Oracle public yum repository. The
same steps outlined in the following section can be used for either version of the preinstall RPM
package. I started with a system running Oracle Linux Release 6 Update 4 for x86_64, a 64-bit
version of Oracle Linux that I downloaded from the Oracle software delivery cloud (requires
registration or login). First, I set up a yum configuration file that pointed to the correct repository,
and then I installed the oracle-rdbms-server-11gR2-preinstall RPM from that repository.

Here are the steps for preconfiguring a system for Oracle Database installation using oracle-
rdbms-server-11gR2-preinstall. Remember, the steps are the same when using the oracle-
rdbms-server-12cR1-preinstall package; you simply need to change the name of the RPM
package during the yum installation step.
1. As an authorized user (for example, root), retrieve the file that configures repository
locations:
2.
3. # cd /etc/yum.repos.d
4.
5. # wget http://public-yum.oracle.com/public-yum-ol6.repo
6.

7. Using a text editor, modify the file, changing the field enabled=0 to enabled=1 to reflect
repositories that correspond to the machine's operating system release.

Here is an excerpt of public-yum-old6.repo with the changed lines in boldface.

[ol6_latest]

name=Oracle Linux $releasever Latest ($basearch)

baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/latest/
$basearch/

gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6

gpgcheck=1

enabled=1

[ol6_UEK_latest]

name=Latest Unbreakable Enterprise Kernel for Oracle Linux $releasever


($basearch)

baseurl=http://public-yum.oracle.com/repo/OracleLinux/OL6/UEK/latest/
$basearch/

gpgkey=http://public-yum.oracle.com/RPM-GPG-KEY-oracle-ol6

gpgcheck=1

enabled=1

Because the target system is running Oracle Linux Release 6 Update 4 for x86_64, which
installs the Oracle Unbreakable Enterprise Kernel by default, there are two repositories to
enable, [ol6_latest] and [ol6_UEK_latest].
8. Next, install the oracle-rdbms-server-11gR2-preinstall RPM using the yum
install command. If you are using Oracle Database 12c, then you would type yum
install.

The output in Listing 1 shows how the installation checks dependencies and then
downloads and installs the required packages.

# yum install oracle-rdbms-server-11gR2-preinstall

Loaded plugins: refresh-packagekit, rhnplugin, security

Setting up Install Process

Resolving Dependencies

--> Running transaction check

---> Package oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el6


will be installed

--> Processing Dependency: gcc-c++ for package: oracle-rdbms-server-


11gR2-preinstall-1.0-6.el6.x86_64

--> Processing Dependency: gcc for package: oracle-rdbms-server-11gR2-


preinstall-1.0-6.el6.x86_64

--> Processing Dependency: libaio-devel for package: oracle-rdbms-


server-11gR2-preinstall-1.0-6.el6.x86_64

--> Processing Dependency: libstdc++-devel for package: oracle-rdbms-


server-11gR2-preinstall-1.0-6.el6.x86_64

--> Processing Dependency: glibc-devel for package: oracle-rdbms-server-


11gR2-preinstall-1.0-6.el6.x86_64

--> Processing Dependency: compat-libstdc++-33 for package: oracle-


rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64

--> Processing Dependency: ksh for package: oracle-rdbms-server-11gR2-


preinstall-1.0-6.el6.x86_64

--> Processing Dependency: compat-libcap1 for package: oracle-rdbms-


server-11gR2-preinstall-1.0-6.el6.x86_64

--> Running transaction check

---> Package compat-libcap1.x86_64 0:1.10-1 will be installed

---> Package compat-libstdc++-33.x86_64 0:3.2.3-69.el6 will be installed

---> Package gcc.x86_64 0:4.4.6-4.el6 will be installed

--> Processing Dependency: cpp = 4.4.6-4.el6 for package: gcc-4.4.6-


4.el6.x86_64
--> Processing Dependency: cloog-ppl >= 0.15 for package: gcc-4.4.6-
4.el6.x86_64

---> Package gcc-c++.x86_64 0:4.4.6-4.el6 will be installed

--> Processing Dependency: libmpfr.so.1()(64bit) for package: gcc-c++-


4.4.6-4.el6.x86_64

---> Package glibc-devel.x86_64 0:2.12-1.80.el6_3.4 will be installed

--> Processing Dependency: glibc-headers = 2.12-1.80.el6_3.4 for


package: glibc-devel-2.12-1.80.el6_3.4.x86_64

--> Processing Dependency: glibc-headers for package: glibc-devel-2.12-


1.80.el6_3.4.x86_64

---> Package ksh.x86_64 0:20100621-16.el6 will be installed

---> Package libaio-devel.x86_64 0:0.3.107-10.el6 will be installed

---> Package libstdc++-devel.x86_64 0:4.4.6-4.el6 will be installed

--> Running transaction check

---> Package cloog-ppl.x86_64 0:0.15.7-1.2.el6 will be installed

--> Processing Dependency: libppl_c.so.2()(64bit) for package: cloog-


ppl-0.15.7-1.2.el6.x86_64

--> Processing Dependency: libppl.so.7()(64bit) for package: cloog-ppl-


0.15.7-1.2.el6.x86_64

---> Package cpp.x86_64 0:4.4.6-4.el6 will be installed

---> Package glibc-headers.x86_64 0:2.12-1.80.el6_3.4 will be installed

--> Processing Dependency: kernel-headers >= 2.2.1 for package: glibc-


headers-2.12-1.80.el6_3.4.x86_64

--> Processing Dependency: kernel-headers for package: glibc-headers-


2.12-1.80.el6_3.4.x86_64

---> Package mpfr.x86_64 0:2.4.1-6.el6 will be installed

--> Running transaction check

---> Package kernel-uek-headers.x86_64 0:2.6.32-300.32.1.el6uek will be


installed

---> Package ppl.x86_64 0:0.10.2-11.el6 will be installed

--> Finished Dependency Resolution

Dependencies Resolved
========================================================================
========

Package Arch Version


Repository Size

========================================================================
========

Installing:

oracle-rdbms-server-11gR2-preinstall

x86_64 1.0-6.el6
ol6_latest 15 k

Installing for dependencies:

cloog-ppl x86_64 0.15.7-1.2.el6


ol6_latest 93 k

compat-libcap1 x86_64 1.10-1


ol6_latest 17 k

compat-libstdc++-33 x86_64 3.2.3-69.el6


ol6_latest 183 k

cpp x86_64 4.4.6-4.el6


ol6_latest 3.7 M

gcc x86_64 4.4.6-4.el6


ol6_latest 10 M

gcc-c++ x86_64 4.4.6-4.el6


ol6_latest 4.7 M

glibc-devel x86_64 2.12-1.80.el6_3.4


ol6_latest 970 k

glibc-headers x86_64 2.12-1.80.el6_3.4


ol6_latest 600 k

kernel-uek-headers x86_64 2.6.32-300.32.1.el6uek


ol6_latest 713 k

ksh x86_64 20100621-16.el6


ol6_latest 684 k

libaio-devel x86_64 0.3.107-10.el6


ol6_latest 13 k

libstdc++-devel x86_64 4.4.6-4.el6


ol6_latest 1.5 M
mpfr x86_64 2.4.1-6.el6
ol6_latest 156 k

ppl x86_64 0.10.2-11.el6


ol6_latest 1.3 M

Transaction Summary

========================================================================
========

Install 15 Package(s)

Total download size: 25 M

Installed size: 61 M

Is this ok [y/N]: Downloading Packages:

------------------------------------------------------------------------
--------

Total 710 kB/s | 25 MB


00:35

Running rpm_check_debug

Running Transaction Test

Transaction Test Succeeded

Running Transaction

Installing : mpfr-2.4.1-6.el6.x86_64
1/15

Installing : libstdc++-devel-4.4.6-4.el6.x86_64
2/15

Installing : cpp-4.4.6-4.el6.x86_64
3/15

Installing : ppl-0.10.2-11.el6.x86_64
4/15

Installing : cloog-ppl-0.15.7-1.2.el6.x86_64
5/15

Installing : kernel-uek-headers-2.6.32-300.32.1.el6uek.x86_64
6/15
Installing : glibc-headers-2.12-1.80.el6_3.4.x86_64
7/15

Installing : glibc-devel-2.12-1.80.el6_3.4.x86_64
8/15

Installing : gcc-4.4.6-4.el6.x86_64
9/15

Installing : gcc-c++-4.4.6-4.el6.x86_64
10/15

Installing : compat-libstdc++-33-3.2.3-69.el6.x86_64
11/15

Installing : libaio-devel-0.3.107-10.el6.x86_64
12/15

Installing : ksh-20100621-16.el6.x86_64
13/15

Installing : compat-libcap1-1.10-1.x86_64
14/15

Installing : oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64
15/15

Verifying : gcc-4.4.6-4.el6.x86_64
1/15

Verifying : compat-libcap1-1.10-1.x86_64
2/15

Verifying : ksh-20100621-16.el6.x86_64
3/15

Verifying : glibc-devel-2.12-1.80.el6_3.4.x86_64
4/15

Verifying : libaio-devel-0.3.107-10.el6.x86_64
5/15

Verifying : oracle-rdbms-server-11gR2-preinstall-1.0-6.el6.x86_64
6/15

Verifying : gcc-c++-4.4.6-4.el6.x86_64
7/15

Verifying : glibc-headers-2.12-1.80.el6_3.4.x86_64
8/15

Verifying : libstdc++-devel-4.4.6-4.el6.x86_64
9/15
Verifying : compat-libstdc++-33-3.2.3-69.el6.x86_64
10/15

Verifying : mpfr-2.4.1-6.el6.x86_64
11/15

Verifying : kernel-uek-headers-2.6.32-300.32.1.el6uek.x86_64
12/15

Verifying : cpp-4.4.6-4.el6.x86_64
13/15

Verifying : ppl-0.10.2-11.el6.x86_64
14/15

Verifying : cloog-ppl-0.15.7-1.2.el6.x86_64
15/15

Installed:

oracle-rdbms-server-11gR2-preinstall.x86_64 0:1.0-6.el6

Dependency Installed:

cloog-ppl.x86_64 0:0.15.7-1.2.el6

compat-libcap1.x86_64 0:1.10-1

compat-libstdc++-33.x86_64 0:3.2.3-69.el6

cpp.x86_64 0:4.4.6-4.el6

gcc.x86_64 0:4.4.6-4.el6

gcc-c++.x86_64 0:4.4.6-4.el6

glibc-devel.x86_64 0:2.12-1.80.el6_3.4

glibc-headers.x86_64 0:2.12-1.80.el6_3.4

kernel-uek-headers.x86_64 0:2.6.32-300.32.1.el6uek

ksh.x86_64 0:20100621-16.el6

libaio-devel.x86_64 0:0.3.107-10.el6

libstdc++-devel.x86_64 0:4.4.6-4.el6

mpfr.x86_64 0:2.4.1-6.el6

ppl.x86_64 0:0.10.2-11.el6
Complete!

Listing 1: Installing the oracle-rdbms-server-11gR2-preinstall RPM

The yum installation logs messages about kernel changes in the file /var/log/oracle-
rdbms-server-11gR2-preinstall/results/orakernel.log, and it makes backups of
current system settings in the directory /var/log/oracle-rdbms-server-11gR2-
preinstall/backup.

9. At this point, the system is ready for the installation of Oracle Database. For example, to
install Oracle Database 11g Release 2, follow the directions in Chapter 4, "Installing
Oracle Database," of the Database Installation Guide for Linux."

Here are the steps I followed while installing Oracle Database 11g Release 2 in my test
environment. Make sure you review all documentation and follow recommended best
practices before installing into your production environment.

a. As root, create a parent directory in a file system that has sufficient space to be
the target location for the downloaded files:
b.
c. # mkdir /home/OraDB11g
d.
e. # cd /home/OraDB11g
f.

The amount of disk space needed in the file system varies according to the
specific installation type, but roughly twice the size of the zip archives, or 5 GB,
is enough to house the software and data files.

g. Into this target directory, download the installation media files from the Oracle
Database Software Downloads page on Oracle Technology Network.

h. Extract the files:


i.
j. # unzip linux.x64_11gR2_database_1of2.zip
k.
l. # unzip linux.x64_11gR2_database_2of2.zip
m.

n. Log in as the user oracle. Change directory to the database directory and enter
the following command to run the Oracle Universal Installer:
o.
p. $ cd /home/OraDB11g/database
q.
r. $ ./runInstaller
s.

The Oracle Universal Installer performs a number of checks, verifying that the necessary
OS packages and versions are installed. In addition, it checks kernel parameters set by the
oracle-rdbms-server-11gR2-preinstall installation. During the kernel settings
check, the installer might flag a few settings as "failed," and you should investigate these
failures. In some cases, you still might be able to continue with the database installation.
If you check kernel settings in /etc/sysctl.conf, you'll see that oracle-rdbms-
server-11gR2-preinstall has modified and added the necessary settings to ensure the
minimum requirements are met, as defined in section 2.10.1, "Displaying and Changing
Kernel Parameter Values," in Chapter 2, "Oracle Database Preinstallation Requirements,"
of the Oracle Database Installation Guide 11g Release2 (11.2) for Linux. Below is the
list of requirements:

fs.aio-max-nr = 1048576

fs.file-max = 6815744

kernel.shmall = 2097152

kernel.shmmax = 4294967295

kernel.shmmni = 4096

kernel.sem = 250 32000 100 128

net.ipv4.ip_local_port_range = 9000 65500

net.core.rmem_default = 262144

net.core.rmem_max = 4194304

net.core.wmem_default = 262144

net.core.wmem_max = 1048576

If necessary, you can (as root) edit the file /etc/sysctl.conf to specify a setting
manually, for example:

# vi /etc/sysctl.conf

# /sbin/sysctl -p
The Oracle Universal Installer performs additional checks, such as verifying the glibc
version, sufficient disk space, environmental variable and path settings, and sufficient
physical memory and swap space. Generally, installing oracle-rdbms-server-11gR2-
preinstall takes care of the prerequisites so that you can proceed directly with
installing the database.

Final Thoughts
Installing the oracle-rdbms-server-12cR1-preinstall and oracle-rdbms-server-11gR2-
preinstall RPMs can save time when installing Oracle Database 12c and 11g on Oracle Linux.
These RPMs address most Oracle Database installation prerequisites and greatly simplify the
installation process.

See Also
Here are the resources referenced earlier in this document:

Oracle Unbreakable Linux Network: https://linux.oracle.com

Oracle public yum repository: http://public-yum.oracle.com/

Oracle software delivery cloud (requires registration or login):


https://edelivery.oracle.com/linux

Chapter 4, "Installing Oracle Database," of the Database Installation Guide for Linux:
http://docs.oracle.com/cd/E11882_01/install.112/e24321/inst_task.htm#BABBBHJH

Oracle Database Software Downloads page on Oracle Technology Network:


http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

And here are some additional resources from the Oracle Database Documentation Library
(http://www.oracle.com/pls/db112/homepage). Relevant subsections from the Oracle Database
Installation Guide 11g Release 2 (11.2) for Linux
(http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/toc.htm) with currently valid
URLs are as follows:

"About the Oracle RDBMS Pre-Install and Oracle Validated RPMs" from Chapter 1,
"Overview of Oracle Database Installation":
http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/install_overview.htm
#BABDBHCJ
Chapter 2, "Oracle Database Preinstallation Requirements":
http://download.oracle.com/docs/cd/E11882_01/install.112/e16763/pre_install.htm#BAB
FDGHJ

"Downloading Oracle Software" from Chapter 4, "Installing Oracle Database," which


describes how to download installation files from the Oracle Technology Network
Website: http://docs.oracle.com/cd/E11882_01/install.112/e16763/inst_task.htm#autoId6

Also see the blog entry "Oracle RDBMS Server 11gR2 Pre-Install RPM for Oracle Linux 6 has
been released": https://blogs.oracle.com/linux/entry/oracle_rdbms_server_11gr2_pre

About the Authors


Ginny Henningsen has worked for the last 15 years as a freelance writer developing technical
collateral and documentation for high-tech companies. Prior to that, Ginny worked for Sun
Microsystems, Inc. as a Systems Engineer in King of Prussia, PA and Milwaukee, WI. Ginny has
a BA from Carnegie-Mellon University and a MSCS from Villanova University.

Michele Casey is the Director of Product Management for Oracle Linux. She has worked with
commercial Linux distributions and open source projects as a product manager since 2006. She
has also held positions as a system administrator, project manager, and technical support
engineer.

Revision 1.1, 07/09/2013; added information about using the


oracle-rdbms-server-12cR1-preinstall package to install
Oracle Database 12c

Follow us:
Blog | Facebook | Twitter | YouTube

Anda mungkin juga menyukai