Oracle Database 11g Release 1 (11.1) Installation on Enterprise Linux 4.5 and 5.0
Introduction
This article provides a complete, step-by-step guide for installing Oracle Database 11g Release 1 (11.1) on Enterprise Linux 4.5 and 5.0. The instructions also work for the original Red Hat Enterprise Linux 4 and 5 distributions, as well as any clones such as CentOS 4 and 5.
The guide is based on a server installation with:
A minimum of 2 GB swap space
Secure Linux (SELinux) disabled
Oracle's recommended default server installation
Note: Oracle recommends a default server installation, but for these installations, the following package groups must be installed.
Required Package Groups
Oracle Enterprise Linux 4.5
X Window System
GNOME Desktop Environment
Editors
Graphical Internet
Server Configuration Tools
Development Tools
Administration Tools
System Tools
Oracle Enterprise Linux 5.0
GNOME Desktop Environment
Editors
Graphical Internet
Text-based Internet
Development Libraries
Development Tools
Server Configuration Tools
Administration Tools
Base
System Tools
X Window System
Note: Alternative installations may require more packages to be loaded, in addition to the ones listed below.
Overview of the Installation Process
| # | Phase | Description |
|---|---|---|
| 1 | Download Software | Obtain the Oracle 11g installation media |
| 2 | Unpack Files | Extract the installation files |
| 3 | Hosts File | Configure the server's hostname |
| 4 | Set Kernel Parameters | Configure kernel and user limits |
| 5 | Setup | Install packages, create groups/users, set environment |
| 6 | Installation | Run the Oracle Universal Installer (OUI) |
| 7 | Post Installation | Configure automatic startup |
Phase 1: Download Software
Download the following software:
Oracle Database 11g Release 1 (11.1) Software
Phase 2: Unpack Files
Unzip the downloaded files:
unzip linux_11gR1_database.zipResult: You should now have a single directory called
databasecontaining the installation files.
Phase 3: Configure the Hosts File
The /etc/hosts file must contain a fully qualified name for the server.
Format:
<IP-address> <fully-qualified-machine-name> <machine-name>Example:
127.0.0.1 localhost localhost.localdomain
192.168.0.215 oel45.localdomain oel45Important: The hostname must be resolvable both forward and backward. Verify with
hostnameandping oel45.localdomain.
Phase 4: Set Kernel Parameters
Oracle recommends the following minimum parameter settings:
kernel.shmall = 2097152
kernel.shmmax = 2147483648 # Smallest of -> (Half the size of physical memory) or (4GB - 1 byte)
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536 # 512 * PROCESSES
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144Verify Current Values
/sbin/sysctl -a | grep <param-name>Apply Kernel Parameters
For Enterprise Linux 4.5, append the following to /etc/sysctl.conf:
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144For Enterprise Linux 5.0, append the following to /etc/sysctl.conf:
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 4194304
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 262144Apply the changes:
/sbin/sysctl -pConfigure User Limits
Add the following lines to /etc/security/limits.conf:
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536Add the following line to /etc/pam.d/login (if it does not already exist):
session required pam_limits.soDisable SELinux
Edit /etc/selinux/config and set:
SELINUX=disabledAlternatively, use the GUI tool: Applications → System Settings → Security Level → SELinux tab → Disable.
Note: If SELinux is disabled after installation, the server will need a reboot for the change to take effect.
Phase 5: Setup
Step 1: Install Required Packages
For Enterprise Linux 4.5:
# From Enterprise Linux 4 Disk 1
cd /media/cdrom/Enterprise/RPMS
rpm -Uvh binutils-2.*
rpm -Uvh elfutils-libelf-0.*
rpm -Uvh glibc-2.*
rpm -Uvh glibc-common-2.*
rpm -Uvh libgcc-3.*
rpm -Uvh libstdc++-3.*
rpm -Uvh compat-libstdc++-33*
rpm -Uvh make-3.*
rpm -Uvh unixODBC-2.*
cd /
eject
# From Enterprise Linux 4 Disk 2
cd /media/cdrom/Enterprise/RPMS
rpm -Uvh glibc-devel-2.*
rpm -Uvh gcc-3.*
rpm -Uvh gcc-c++-3.*
rpm -Uvh libstdc++-devel-3.*
cd /
eject
# From Enterprise Linux 4 Disk 3
cd /media/cdrom/Enterprise/RPMS
rpm -Uvh libaio-0.*
rpm -Uvh libaio-devel-0.*
rpm -Uvh sysstat-5.*
cd /
eject
# From Enterprise Linux 4 Disk 4
cd /media/cdrom/Enterprise/RPMS
rpm -Uvh elfutils-libelf-devel-0.*
rpm -Uvh unixODBC-devel-2.*
cd /
ejectFor Enterprise Linux 5.0:
# From Enterprise Linux 5 Disk 1
cd /media/cdrom/Server
rpm -Uvh binutils-2.*
rpm -Uvh elfutils-libelf-0.*
rpm -Uvh glibc-2.*
rpm -Uvh glibc-common-2.*
rpm -Uvh libaio-0.*
rpm -Uvh libgcc-4.*
rpm -Uvh libstdc++-4.*
rpm -Uvh make-3.*
cd /
eject
# From Enterprise Linux 5 Disk 2
cd /media/cdrom/Server
rpm -Uvh compat-libstdc++-33*
rpm -Uvh elfutils-libelf-devel-0.*
rpm -Uvh glibc-devel-2.*
rpm -Uvh gcc-4.*
rpm -Uvh gcc-c++-4.*
rpm -Uvh libaio-devel-0.*
rpm -Uvh libstdc++-devel-4.*
rpm -Uvh unixODBC-2.*
rpm -Uvh unixODBC-devel-2.*
cd /
eject
# From Enterprise Linux 5 Disk 3
cd /media/cdrom/Server
rpm -Uvh sysstat-7.*
cd /
ejectStep 2: Create Groups and Users
groupadd oinstall
groupadd dba
groupadd oper
groupadd asmadmin
useradd -g oinstall -G dba,oper,asmadmin oracle
passwd oracleNote: The
asmadmingroup is not used in this installation since ASM is not being configured.
Step 3: Create Oracle Directories
mkdir -p /u01/app/oracle/product/11.1.0/db_1
chown -R oracle:oinstall /u01
chmod -R 775 /u01Step 4: Configure X11 Access
Log in as root and issue:
xhost +<machine-name>Step 5: Configure the Oracle Environment
Log in as the oracle user and add the following lines to the end of .bash_profile:
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR
ORACLE_HOSTNAME=oel45.localdomain; export ORACLE_HOSTNAME
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.1.0/db_1; export ORACLE_HOME
ORACLE_SID=DB11G; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH
if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fiPhase 6: Installation
Step 1: Log In as Oracle User
su - oracleIf using X emulation, set the DISPLAY variable:
DISPLAY=<machine-name>:0.0; export DISPLAYStep 2: Start the Oracle Universal Installer
cd database
./runInstallerStep 3: Follow the Installation Screens
During the installation, enter the appropriate ORACLE_HOME and name, then continue. The installation progresses through the following screens:
| # | Screen | Purpose |
|---|---|---|
| 1 | Select Installation Method | Choose between Basic and Advanced installation |
| 2 | Specify Inventory Directory and Credentials | Set the oraInventory location and group |
| 3 | Select Installation Type | Choose Enterprise, Standard, or Personal Edition |
| 4 | Install Location | Specify the ORACLE_HOME and ORACLE_BASE |
| 5 | Product-Specific Prerequisite Checks | Verify all prerequisites are met |
| 6 | Select Configuration Option | Choose to create a database or install software only |
| 7 | Select Database Configuration | Choose the database template |
| 8 | Specify Database Configuration Options | Set the global database name and SID |
| 9 | Specify Database Configuration Details | Configure memory, character set, and security |
| 10 | Select Database Management Option | Choose between Grid Control and Database Control |
| 11 | Specify Database Storage Option | Choose between File System and ASM |
| 12 | Specify Backup and Recovery Options | Enable or disable automatic backups |
| 13 | Specify Database Schema Passwords | Set passwords for SYS, SYSTEM, etc. |
| 14 | Oracle Configuration Manager Registration | Optionally register with My Oracle Support |
| 15 | Summary | Review all installation settings |
| 16 | Install | Begin the installation |
| 17 | Configuration Assistants | Run post-installation configuration |
| 18 | Database Configuration Assistant | Create and configure the database |
| 19 | Database Configuration Assistant Summary | Review the database configuration |
| 20 | Execute Configuration Scripts | Run the required root scripts |
| 21 | End of Installation | Installation complete |
| 22 | OEM Database Control Login | Log in to Enterprise Manager |
| 23 | OEM Database Control | Manage the database via Enterprise Manager |
Phase 7: Post Installation
Edit the /etc/oratab file and set the restart flag for each instance to Y:
DB11G:/u01/app/oracle/product/11.1.0/db_1:YPurpose: The
Yflag enables automatic startup of the database when the server boots, using thedbstartutility.
The Complete Installation Flow
┌─────────────────────────────────────────────────────────────────┐
│ 1. DOWNLOAD SOFTWARE │
│ Oracle Database 11g Release 1 (11.1) Software │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 2. UNPACK FILES │
│ unzip linux_11gR1_database.zip │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 3. HOSTS FILE │
│ Configure /etc/hosts with FQDN │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 4. SET KERNEL PARAMETERS │
│ /etc/sysctl.conf, /etc/security/limits.conf, SELinux │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 5. SETUP │
│ Install packages, create groups/users, set environment │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 6. INSTALLATION │
│ ./runInstaller (interactive) │
│ Follow installation screens │
│ Run root scripts │
└──────────────────────────┬──────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────────┐
│ 7. POST INSTALLATION │
│ Edit /etc/oratab and set the restart flag to Y │
└─────────────────────────────────────────────────────────────────┘Key Configuration Files
| File | Purpose |
|---|---|
/etc/hosts | Hostname resolution |
/etc/sysctl.conf | Kernel parameters |
/etc/security/limits.conf | User limits |
/etc/pam.d/login | PAM limits configuration |
/etc/selinux/config | SELinux mode |
/home/oracle/.bash_profile | Oracle environment variables |
/etc/oratab | Database startup configuration |
Best Practices
| Practice | Description |
|---|---|
| Use a Certified OS | Use a certified OS version for production |
| Use Separate Mount Points | Mount /u01 on a separate disk |
| Configure the Firewall | Instead of disabling, configure ports (1521, etc.) |
| Set Secure Passwords | Use strong passwords for SYS, SYSTEM, and other schemas |
| Patch Before Creating DB | Apply the latest patches before creating the database |
| Test the Installation | Verify connectivity and basic operations after installation |
| Document Configuration | Keep a record of all parameters and settings |
| Enable Automatic Startup | Configure /etc/oratab for automatic startup |
Troubleshooting Common Issues
| Issue | Possible Cause | Solution |
|---|---|---|
| Prerequisite check fails | Missing packages | Install required packages via rpm |
| Installer won't start | DISPLAY not set | Set the DISPLAY variable or use X emulation |
| Root script fails | Wrong permissions | Run as root and verify paths |
| Database won't start | Wrong ORACLE_HOME | Verify environment variables |
| Memory errors | Insufficient memory | Increase server memory or reduce SGA |
| Firewall blocks connections | Firewall enabled | Configure or disable the firewall |
| SELinux blocks installation | SELinux enabled | Disable SELinux and reboot |
| Kernel parameter errors | Wrong sysctl values | Verify and correct /etc/sysctl.conf |
Summary
Installing Oracle Database 11g Release 1 (11.1) on Enterprise Linux 4.5 and 5.0 involves the following key phases:
Download Software: Obtain the Oracle 11g installation media
Unpack Files: Extract the installation files
Hosts File: Configure the server's hostname
Set Kernel Parameters: Configure kernel parameters, user limits, and SELinux
Setup: Install packages, create groups/users, set environment
Installation: Run the Oracle Universal Installer (OUI)
Post Installation: Configure automatic startup via
/etc/oratab
Key Points to Remember
Oracle Database 11g Release 1 requires specific kernel parameters and user limits
SELinux should be disabled during installation
The required packages must be installed from the OS installation media
The oracle user must be created with the correct groups
The environment variables must be set in
.bash_profileThe Oracle Universal Installer guides you through the installation
The root scripts must be run after the installer completes
The
/etc/oratabfile controls automatic startup
Why This Matters
Proper installation and configuration of Oracle Database 11g Release 1 is essential for:
Reliable Performance: Correct kernel parameters and user limits ensure optimal database performance
Security: Proper user/group setup and SELinux configuration protect the database
Manageability: Environment scripts and automatic startup simplify administration
Scalability: A well-configured database can handle growing workloads
Compatibility: Correct setup ensures compatibility with Oracle E-Business Suite and other applications
By following this guide, you can successfully install Oracle Database 11g Release 1 on Enterprise Linux 4.5 and 5.0, providing a solid foundation for your Oracle applications.
References
Oracle Database Documentation: Database Installation Guide for Linux
Oracle Database Documentation: Database Administrator's Reference
My Oracle Support: Oracle Database 11g Release 1 Certification Matrix
Red Hat Enterprise Linux Documentation: RHEL 4 and 5 Installation Guide
Related Articles: Oracle Universal Installations (OUI) Silent Installations, Database Configuration Assistant (DBCA): Creating Databases in Silent Mode
No comments:
Post a Comment