Requirements for Installing Oracle Database 18c on OL7 or RHEL7 64-bit (x86-64)
PURPOSE
This note explains the requirements that need to be met for a successful installation of Oracle Database 18c release On Oracle Linux 7 (or higher 7.x version) or Red Hat Enterprise Linux 7 (or higher 7.x version) 64-bit (x86-64).
It is NOT the purpose of this NOTE to repeat every “how-to” step that is presented in the Oracle Database 18c Installation Guide. For example this NOTE does not include how to create the Linux OS account named “oracle”, nor does it cover how to set environment variables. Both are adequately covered in “Oracle® Database Installation Guide 18c for Linux”
SCOPE
This procedure is meant for those Planning / Installing Oracle Database 18c on Oracle Linux 7 (or higher 7.x version) or RHEL 7.0 (or higher 7.x version) on the 64-bit (x86-64) platform. Since it is the expressed goal to keep Oracle Linux (OL) functionally IDENTICAL to RHEL, this NOTE is also completely applicable to 64-bit (x86-64) OL 7.0
This procedure is not meant for those Planning / Installing Grid Infrastructure (GI) or any other Oracle products.
DETAILS
Requirements for installing Oracle Database 18c release 64-bit on OL7 64-bit or RHEL7 (x86_64)
Before you proceed with Installation, please take time to review every below requirement carefully to avoid any obvious issues during Installation of binaries.
– Download the Oracle Database 18c Software
-Download the Oracle Database 18c software from My Oracle Support
-After you download the Software, Verify the integrity of the Downloaded Software
Note 549617.1 How To Verify The Integrity Of A Patch/Software Download? [Video]
-If you have downloaded the Software on other Machine, please transfer the zip file on the Server being Installed using Binary Mode and unzip with the Oracle Software user.
Hardware
Minimum Hardware Requirements
a. Ensure that your system meets the following Physical Memory requirements:
Minimum: 1 GB of RAM
Recommended: 2 GB of RAM or more
b. Swap space allocation relative to RAM
RAM | Swap Space |
Between 1 GB and 2 GB | 1.5 times the size of the RAM |
Between 2 GB and 16 GB | Equal to the size of the RAM |
More than 16 GB | 16 GB |
NOTE: The above recommendations (from the Oracle® Database Installation Guide 18c for Linux) are MINIMUM recommendations for installations. Further RAM and swap space may be required to tune/improve RDBMS performance.
c. 1.0 GB (1024MB) of disk space (and less than 2TB of disk space) in the /tmp directory.
d. If the free space available in the /tmp directory is less than what is required, then complete one of the following steps:
– Delete unnecessary files from the /tmp directory to meet the disk space requirement.
– Set the TMP and TMPDIR environment variables when setting the oracle user’s environment.
e. Approximately 6.5 GB of local disk space for the Database Software Files.
f. If you intend to create a preconfigured database during the installation, then the file system (or file systems) that you choose must have at least 2 GB of free disk space.
For production databases, you must estimate the disk space requirement depending on the use of the database.
2. Oracle Database is supported on ext2, ext3 and ext4 file systems (see Note:236826.1 for further information)
Software
Certified Operating System
Oracle Linux 7
Red Hat Enterprise Linux 7
a. For Minimal Linux Installation :
A minimal Linux installation option is either a custom installation where you select the Minimal option from Package Group Selection, or where you deselect all packages except for the Base pack. A minimal Linux installation lacks many RPMs required for database installation, so you must use an RPM package for your Oracle Linux release to install the required packages. The package you use depends on your Linux release
b. For a Default Linux Installation
Oracle recommends that you install your Linux operating system with the default software packages (RPMs).
A default Linux installation includes most of the required packages and helps you limit manual verification of package dependencies. Oracle recommends that you do not customize the RPMs during installation.
Kernel requirements
The following kernels are supported:
Oracle Linux 7.2 with the Unbreakable Enterprise Kernel 4: 4.1.12-32.2.3.el7uek.x86_64 or later
Oracle Linux 7 with the Red Hat Compatible kernel: 3.10.0-123.el7.x86_64 or later
Red Hat Enterprise Linux 7: 3.10.0-123.el7.x86_64 or later
It is observed there are hang issues in RHEL 7 with many CPU cores and more RAM, due NUMA was enabled. As a work around it is recommended to turn off NUMA.
Note 1508516.1 Is It Mandatory To Install UEK Kernel Under RHEL?
Oracle Universal Installer requires an X Window System (for example, libx)
The libx packages are part of a default Linux installation.
If you perform an install on a system with a reduced set of packages, then you must ensure that libx or a similar X Window System package is installed
At least 1 GB of space in the /tmp directory.
Runlevel : 3 or 5
Oracle User Environment Configuration Checklist :
For new installs, if you have not configured an oraInventory directory, then the installer creates an Oracle inventory that is one directory level up from the Oracle base for the Oracle Grid Infrastructure install, and designates the installation owner’s primary group as the Oracle Inventory group.
The oinstall group must be the primary group of all Oracle software installation owners on the server. It should be writable by any Oracle installation owner.
Oracle recommends that you create groups and user accounts required for your security plans before starting installation. Installation owners have resource limits settings and other requirements.
If you have an existing Oracle software installation, and you are using the same user to install this installation, then unset the following environment variables: $ORACLE_HOME,$ORA_NLS10, and $TNS_ADMIN, $ORACLE_BASE, $ORACLE_SID
By default, your operating system includes an entry in /etc/fstab to mount /dev/shm. However, if your Cluster Verification Utility (CVU) or Oracle Universal Installer (OUI) checks fail, ensure that the /dev/shm mount area is of type tmpfs and is mounted with the following options:
rw and exec permissions set on it
Without noexec or nosuid set on it
Set the default file mode creation mask (umask) to 022 in the shell startup file.
Storage Checklist for Oracle Database
At least 7.5 GB for Oracle Database Enterprise Edition.
At least 7.5 GB for Oracle Database Standard Edition 2.
Minimum Operating System Resource Parameter Settings
semmsl 250
semmns 32000
semopm 100
semmni 128
shmall Greater than or equal to the value of shmmax, in pages /proc/sys/kernel/shmall
shmmax Half the size of physical memory in bytes /proc/sys/kernel/shmmax
shmmni 4096
panic_on_oops 1
file-max 6815744
aio-max-nr 1048576
ip_local_port_range Minimum: 9000
ip_local_port_range Maximum: 65500
rmem_default 262144
rmem_max 4194304
wmem_default 262144
wmem_max 1048576
Verify the latest version of PAM is loaded, then add or edit the following line in the /etc/pam.d/login file, if it does not already exist:
Minimum Operating System Requirements
Item | Requirements |
SSH Requirement | Ensure that OpenSSH is installed on your servers. OpenSSH is the required SSH software. |
Packages for Oracle Linux 7 with UEK3 | bc binutils-2.23.52.0.1-12.el7.x86_64 compat-libcap1-1.10-3.el7.x86_64 compat-libstdc++-33-3.2.3-71.el7.i686 compat-libstdc++-33-3.2.3-71.el7.x86_64 fontconfig-devel-2.10.95-7.el7.x86_64 ksh libX11-1.6.0-2.1.el7.i686 libX11-1.6.0-2.1.el7.x86_64 libXau-1.0.8-2.1.el7.i686 libXau-1.0.8-2.1.el7.x86_64 libXi-1.7.2-1.el7.i686 libXi-1.7.2-1.el7.x86_64 libXtst-1.2.2-1.el7.i686 libXtst-1.2.2-1.el7.x86_64 libXrender-devel-0.9.10-1.el7.i686 libXrender-devel-0.9.10-1.el7.x86_64 libXrender-0.9.10-1.el7.i686 libXrender-0.9.10-1.el7.x86_64 libgcc-4.8.2-3.el7.i686 libgcc-4.8.2-3.el7.x86_64 libstdc++-4.8.2-3.el7.i686 libstdc++-4.8.2-3.el7.x86_64 libstdc++-devel-4.8.2-3.el7.i686 libstdc++-devel-4.8.2-3.el7.x86_64 libxcb-1.9-5.el7.i686 libxcb-1.9-5.el7.x86_64 make-3.82-19.el7.x86_64 make-3.82-19.el7.x86_64 net-tools-2.0-0.17.20131004git.el7 (x86_64) (for Oracle RAC and Oracle Clusterware) nfs-utils-1.3.0-0.21.el7.x86_64 python-2.7.5-34.0.1.el7 (x86_64) (for Oracle ACFS Remote) python-configshell-1.1.fb18-1.el7.noarch (for Oracle ACFS Remote) python-rtslib-2.1.fb57-3.el7.noarch (for Oracle ACFS Remote) python-six-1.9.0-2.el7.noarch (for Oracle ACFS Remote) smartmontools-6.2-4.el7.x86_64 sysstat-10.1.5-1.el7.x86_64 targetcli-2.1.fb41-3.el7.noarch (for Oracle ACFS Remote) |
Packages for Oracle Linux 7.2 with UEK 4 | bc binutils-2.23.52.0.1-55.el7.x86_64 compat-libcap1-1.10-3.el7.x86_64 compat-libstdc++-33-3.2.3-71.el7.i686 compat-libstdc++-33-3.2.3-71.el7.x86_64 elfutils-libelf-0.163-3.el7.i686 elfutils-libelf-0.163-3.el7.x86_64 elfutils-libelf-devel-0.163-3.el7.i686 elfutils-libelf-devel-0.163-3.el7.x86_64 fontconfig-devel-2.10.95-7.el7.x86_64 glibc-2.17-106.0.1.el7_2.6.i686 glibc-2.17-106.0.1.el7_2.6.x86_64 glibc-devel-2.17-106.0.1.el7_2.6.i686 glibc-devel-2.17-106.0.1.el7_2.6.x86_64 ksh libaio-0.3.109-13.el7.i686 libaio-0.3.109-13.el7.x86_64 libaio-devel-0.3.109-13.el7.i686 libaio-devel-0.3.109-13.el7.x86_64 libX11-1.6.3-2.el7.i686 libX11-1.6.3-2.el7.x86_64 libXau-1.0.8-2.1.el7.i686 libXau-1.0.8-2.1.el7.x86_64 libXi-1.7.4-2.el7.i686 libXi-1.7.4-2.el7.x86_64 libXtst-1.2.2-2.1.el7.i686 libXtst-1.2.2-2.1.el7.x86_64 libXrender-devel-0.9.10-1.el7.i686 libXrender-devel-0.9.10-1.el7.x86_64 libXrender-0.9.10-1.el7.i686 libXrender-0.9.10-1.el7.x86_64 libgcc-4.8.5-4.el7.i686 libgcc-4.8.5-4.el7.x86_64 librdmacm-devel-1.0.21-1.el7.i686 librdmacm-devel-1.0.21-1.el7.x86_64 libstdc++-4.8.5-4.el7.i686 libstdc++-4.8.5-4.el7.x86_64 libstdc++-devel-4.8.5-4.el7.i686 libstdc++-devel-4.8.5-4.el7.x86_64 libxcb-1.11-4.el7.i686 libxcb-1.11-4.el7.x86_64 make-3.82-21.el7.x86_64 nfs-utils-1.3.0-0.21.el7.x86_64 (for Oracle ACFS) net-tools-2.0-0.17.20131004git.el7 (x86_64) (for Oracle RAC and Oracle Clusterware) python-2.7.5-34.0.1.el7 (x86_64) (for Oracle ACFS Remote) python-configshell-1.1.fb18-1.el7.noarch (for Oracle ACFS Remote) python-rtslib-2.1.fb57-3.el7.noarch (for Oracle ACFS Remote) python-six-1.9.0-2.el7.noarch (for Oracle ACFS Remote) smartmontools-6.2-4.el7.x86_64 sysstat-10.1.5-7.el7.x86_64 targetcli-2.1.fb41-3.el7.noarch (for Oracle ACFS Remote) |
Packages for Oracle Linux 7.5 with UEK 5 | bc binutils compat-libcap1 compat-libstdc++ elfutils-libelf elfutils-libelf-devel fontconfig-devel glibc glibc-devel ksh libaio libaio-devel libX11 libXau libXi libXtst libXrender-devel libXrender libgcc librdmacm-devel libstdc++ libstdc++-devel libxcb make nfs-utils (for Oracle ACFS) net-tools (for Oracle RAC and Oracle Clusterware) python (for Oracle ACFS Remote) python-configshell (for Oracle ACFS Remote) python-rtslib (for Oracle ACFS Remote) python-six (for Oracle ACFS Remote) smartmontools sysstat targetcli (for Oracle ACFS Remote) |
Packages for Oracle Linux 7 with Red Hat Compatible kernel | bc binutils-2.23.52.0.1-12.el7.x86_64 compat-libcap1-1.10-3.el7.x86_64 compat-libstdc++-33-3.2.3-71.el7.i686 compat-libstdc++-33-3.2.3-71.el7.x86_64 glibc-2.17-36.el7.i686 glibc-2.17-36.el7.x86_64 glibc-devel-2.17-36.el7.i686 glibc-devel-2.17-36.el7.x86_64 ksh libaio-0.3.109-9.el7.i686 libaio-0.3.109-9.el7.x86_64 libaio-devel-0.3.109-9.el7.i686 libaio-devel-0.3.109-9.el7.x86_64 libX11-1.6.0-2.1.el7.i686 libX11-1.6.0-2.1.el7.x86_64 libXau-1.0.8-2.1.el7.i686 libXau-1.0.8-2.1.el7.x86_64 libXi-1.7.2-1.el7.i686 libXi-1.7.2-1.el7.x86_64 libXtst-1.2.2-1.el7.i686 libXtst-1.2.2-1.el7.x86_64 libXrender-devel-0.9.10-1.el7.i686 libXrender-devel-0.9.10-1.el7.x86_64 libXrender-0.9.10-1.el7.i686 libXrender-0.9.10-1.el7.x86_64 libgcc-4.8.2-3.el7.i686 libgcc-4.8.2-3.el7.x86_64 libstdc++-4.8.2-3.el7.i686 libstdc++-4.8.2-3.el7.x86_64 libstdc++-devel-4.8.2-3.el7.i686 libstdc++-devel-4.8.2-3.el7.x86_64 libxcb-1.9-5.el7.i686 libxcb-1.9-5.el7.x86_64 make-3.82-19.el7.x86_64 make-3.82-19.el7.x86_64 nfs-utils-1.3.0-0.21.el7.x86_64 (for Oracle ACFS) net-tools-2.0-0.17.20131004git.el7 (x86_64) (for Oracle RAC and Oracle Clusterware) python-2.7.5-34.0.1.el7 (x86_64) (for Oracle ACFS Remote) python-configshell-1.1.fb18-1.el7.noarch (for Oracle ACFS Remote) python-rtslib-2.1.fb57-3.el7.noarch (for Oracle ACFS Remote) python-six-1.9.0-2.el7.noarch (for Oracle ACFS Remote) smartmontools-6.2-4.el7.x86_64 sysstat-10.1.5-1.el7.x86_64 targetcli-2.1.fb41-3.el7.noarch (for Oracle ACFS Remote |
Packages for Red Hat Enterprise Linux 7 | bc binutils-2.23.52.0.1-12.el7.x86_64 compat-libcap1-1.10-3.el7.x86_64 compat-libstdc++-33-3.2.3-71.el7.i686 compat-libstdc++-33-3.2.3-71.el7.x86_64 glibc-2.17-36.el7.i686 glibc-2.17-36.el7.x86_64 glibc-devel-2.17-36.el7.i686 glibc-devel-2.17-36.el7.x86_64 ksh libaio-0.3.109-9.el7.i686 libaio-0.3.109-9.el7.x86_64 libaio-devel-0.3.109-9.el7.i686 libaio-devel-0.3.109-9.el7.x86_64 libX11-1.6.0-2.1.el7.i686 libX11-1.6.0-2.1.el7.x86_64 libXau-1.0.8-2.1.el7.i686 libXau-1.0.8-2.1.el7.x86_64 libXi-1.7.2-1.el7.i686 libXi-1.7.2-1.el7.x86_64 libXtst-1.2.2-1.el7.i686 libXtst-1.2.2-1.el7.x86_64 libXrender-devel-0.9.10-1.el7.i686 libXrender-devel-0.9.10-1.el7.x86_64 libXrender-0.9.10-1.el7.i686 libXrender-0.9.10-1.el7.x86_64 libgcc-4.8.2-3.el7.i686 libgcc-4.8.2-3.el7.x86_64 libstdc++-4.8.2-3.el7.i686 libstdc++-4.8.2-3.el7.x86_64 libstdc++-devel-4.8.2-3.el7.i686 libstdc++-devel-4.8.2-3.el7.x86_64 libxcb-1.9-5.el7.i686 libxcb-1.9-5.el7.x86_64 make-3.82-19.el7.x86_64 make-3.82-19.el7.x86_64 nfs-utils-1.3.0-0.21.el7.x86_64 (for Oracle ACFS) net-tools-2.0-0.17.20131004git.el7 (x86_64) (for Oracle RAC and Oracle Clusterware) python-2.7.5-34.0.1.el7 (x86_64) (for Oracle ACFS Remote) python-configshell-1.1.fb18-1.el7.noarch (for Oracle ACFS Remote) python-rtslib-2.1.fb57-3.el7.noarch (for Oracle ACFS Remote) python-six-1.9.0-2.el7.noarch (for Oracle ACFS Remote) smartmontools-6.2-4.el7.x86_64 sysstat-10.1.5-1.el7.x86_64 targetcli-2.1.fb41-3.el7.noarch (for Oracle ACFS Remote) |
The Oracle ORAchk utility provides system checks that can help to prevent issues before and after installation. These checks include kernel requirements, operating system resource allocations, and other system requirements.
Before you perform a fresh database installation:
Running Oracle Database Setup Wizard to Install Oracle Database
Log in as the Oracle installation owner user account (oracle) that you want to own the software binaries.
Download the Oracle Database installation image files (db_home.zip) to a directory of your choice. For example, you can download the image files to the /tmp directory.
Create the Oracle home directory and extract the image files that you have downloaded in to this Oracle home directory. For example:
$ mkdir -p /u01/app/oracle/product/18.0.0/dbhome_1
$ chgrp oinstall /u01/app/oracle/product/18.0.0/dbhome_1
$ cd /u01/app/oracle/product/18.0.0/dbhome_1
$ unzip -q /tmp/db_home.zip
From the Oracle home directory, run the runInstaller command to start the Oracle Database Setup Wizard.
$ cd /u01/app/oracle/product/18.0.0/dbhome_1
$ ./runInstaller
In the Select Configuration Option screen, select Create and configure a single instance database.
Select your installation type.
ADDITIONAL NOTES
1. Starting from Oracle Database 12.1 32-bit Oracle Database Software is not available.
2. Supported distributions of the 32-bit (x86) Oracle Database Client Linux OS can run on on AMD64/EM64T and Intel Processor Chips that adhere to the x86_64 architecture. Oracle 32-bit Database Client running on AMD64/EM64T with 64-bit OS is expected to be supported, but is NOT covered by this NOTE.
3. Asynchronous I/O on ext2 and ext3 file systems is supported if your scsi/fc driver supports that functionality.
Note : Asynchronous I/O on Ext4 file system is supported with Oracle 10g onwards on OEL5.6 and later.
Reference : Oracle Linux, Filesystem & I/O Type Supportability (Note 279069.1)[This section is not visible to customers.]
4. No extra patch is required for the DIRECTIO support for x86_64.
5. No LD_ASSUME_KERNEL value should be used with the Oracle Database 12.2 product.
6. The following rpm command can be used to distinguish between a 32-bit or 64-bit package.
# rpm -qa –queryformat “%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n” | grep glibc-devel
glibc-devel-2.12-1.7.el6 (x86_64)
glibc-devel-2.12-1.7.el6 (i686)
7. Oracle Universal Installer requires an X Window System (for example, libx). The libx packages are part of a default Linux installation. If you perform an install on a system with a reduced set of packages, then you must ensure that libx or a similar X Window System package is installed.
8. 32-bit packages (i686 rpm) in these requirements lists are needed only if you intend to use 32-bit client applications to access 64-bit servers.
9. Oracle Database 12c Release 2 (12.2) and later does not require the compiler packages gcc and gcc-c++ on Oracle Linux and Red Hat Enterprise Linux for Oracle Database or Oracle Grid Infrastructure installations.