Oracle Database 19c installation on Linux 8

In this post I will describe the installation of Oracle Database 19c 64-bit on Oracle Linux 8 (OL8) 64-bit. The installation require a minimum of 2g swap memory and secure Linux set to permissive.

·       Download Software

Oracle Database 19c (19.3) Software (64-bit)

Add hosts entry in hosts file

[oracle@ocisoumya-2 PDB1]$ cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.142 ocisoumya-2.subnet09232321.vcn09232321.oraclevcn.com ocisoumya-2

 ·       Oracle Installation

The installation can be done either in Automatic or Manual way

1.     Automatic installation

[root@ocisoumya oled]# dnf install -y oracle-database-preinstall-19c

2.       Manual Installation

a.       In this installation mode, we need to make following changes on /etc/sysctl.conf file

[root@ocisoumya oled]# vi /etc/sysctl.conf
fs.file-max = 6815744
kernel.sem = 250 32000 100 128
kernel.shmmni = 4096
kernel.shmall = 1073741824
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
net.ipv4.conf.all.rp_filter = 2
net.ipv4.conf.default.rp_filter = 2
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500

b.       Run following command to amend the changes.

[root@ocisoumya oled]# sysctl -p

c.     Make changes in /etc/security/limits.d/oracle-database-preinstall-19c.conf

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

d.       Install following packages

dnf install -y bc   
dnf install -y binutils
#dnf install -y compat-libcap1
dnf install -y compat-libstdc++-33
#dnf install -y dtrace-modules
#dnf install -y dtrace-modules-headers
#dnf install -y dtrace-modules-provider-headers
#dnf install -y dtrace-utils
dnf install -y elfutils-libelf
dnf install -y elfutils-libelf-devel
dnf install -y fontconfig-devel
dnf install -y glibc
dnf install -y glibc-devel
dnf install -y ksh
dnf install -y libaio
dnf install -y libaio-devel
#dnf install -y libdtrace-ctf-devel
dnf install -y libXrender
dnf install -y libXrender-devel
dnf install -y libX11
dnf install -y libXau
dnf install -y libXi
dnf install -y libXtst
dnf install -y libgcc
dnf install -y librdmacm-devel
dnf install -y libstdc++
dnf install -y libstdc++-devel
dnf install -y libxcb
dnf install -y make
dnf install -y net-tools # Clusterware
dnf install -y nfs-utils # ACFS
dnf install -y python # ACFS
dnf install -y python-configshell # ACFS
dnf install -y python-rtslib # ACFS
dnf install -y python-six # ACFS
dnf install -y targetcli # ACFS
dnf install -y smartmontools
dnf install -y sysstat
# New for OL8
dnf install -y libnsl
dnf install -y libnsl.i686
dnf install -y libnsl2


dnf install -y libnsl2.i686

e.  Create group and oracle user

groupadd -g 54321 oinstall
groupadd -g 54322 dba


useradd -u 54321 -g oinstall -G dba oracle

   Set password for oracle user

[root@ocisoumya ~]# passwd oracle
Changing password for user oracle.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
  •          Set Disabled or PERMISSIVE to SELINUX
[root@ocisoumya ~]# vi /etc/selinux/config
SELINUX=disabled

·                          Disable firewall

[root@ocisoumya ~]# systemctl stop firewalld
[root@ocisoumya ~]# systemctl disable firewalld
Removed /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.

·       Create directories for oracle installation.

[oracle@ocisoumya u01]$ mkdir -p /u01/app/oracle/19.3.0/dbhome_1
[oracle@ocisoumya u01]$ chown -R oracle:oinstall /u01
[oracle@ocisoumya u01]$ chmod -R 775 /u01

·       Login to root user and perform

[root@ocisoumya opc]# xhost +
 
[root@ocisoumya opc]# su – oracle

·       Prepare bash_profile to set oracle home and other paths

export ORACLE_BASE=/u01/app
export ORACLE_HOME=/u01/app/oracle/19.3.0/dbhome_1
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib
export PATH=/usr/sbin:/usr/local/bin:$PATH
export PATH=$JAVA_HOME/bin:$ORACLE_HOME/bin:$PATH
export ORACLE_SID=ORCL

·       Unzip the software

[oracle@ocisoumya ~]$ cd $ORACLE_HOME
[oracle@ocisoumya dbhome_1]$ unzip -oq /u01/LINUX.X64_193000_db_home.zip

Start installation by invoking runinstaller using command We would only install the binary in first phase.

[oracle@ocisoumya dbhome_1]$ export ORACLE_HOSTNAME=ocisoumya.example.com
[oracle@ocisoumya dbhome_1]$ export ORA_INVENTORY= /u01/oraInventory
 
[oracle@ocisoumya dbhome_1]$ ./runInstaller -ignorePrereq -waitforcompletion -silent                        \
     -responseFile ${ORACLE_HOME}/install/response/db_install.rsp               \
     oracle.install.option=INSTALL_DB_SWONLY                                    \
     ORACLE_HOSTNAME=${ORACLE_HOSTNAME}                                         \
     UNIX_GROUP_NAME=oinstall                                                   \
     INVENTORY_LOCATION=${ORA_INVENTORY}                                        \
     SELECTED_LANGUAGES=en,en_GB                                                \
     ORACLE_HOME=${ORACLE_HOME}                                                 \
     ORACLE_BASE=${ORACLE_BASE}                                                 \
     oracle.install.db.InstallEdition=EE                                        \
     oracle.install.db.OSDBA_GROUP=oinstall                                          \
     oracle.install.db.OSBACKUPDBA_GROUP=oinstall                                    \
     oracle.install.db.OSDGDBA_GROUP=oinstall                                        \
     oracle.install.db.OSKMDBA_GROUP=oinstall                                        \
     oracle.install.db.OSRACDBA_GROUP=oinstall                                       \
     SECURITY_UPDATES_VIA_MYORACLESUPPORT=false                                 \
                   DECLINE_SECURITY_UPDATES=true

Execute following scripts as root user post software installation

As a root user, execute the following script(s):
        1. /u01/app/oraInventory/orainstRoot.sh
        2. /u01/app/oracle/19.3.0/dbhome_1/root.sh

·       Database Creation

The Database Configuration Assistant (DBCA) is typically used to create databases. To facilitate user interaction, GUI screens will be displayed in the interactive mode. In this post, however, I’ll create the database in silent mode without showing any windows because the command line already has all the necessary options given.

dbca -silent -createDatabase                                                   \
 -templateName General_Purpose.dbc                                         \
 -gdbname ${ORACLE_SID} -sid  ${ORACLE_SID} -responseFile NO_VALUE         \
 -characterSet AL32UTF8                                                    \
 -sysPassword welcome123#                                                \
 -systemPassword welcome123#                                              \
 -createAsContainerDatabase true                                           \
 -numberOfPDBs 1                                                           \
 -pdbName PDB1                                                     \
 -pdbAdminPassword welcome123#                                           \
 -databaseType MULTIPURPOSE                                                \
 -memoryMgmtType auto_sga                                                  \
 -totalMemory 2000                                                         \
 -storageType FS                                                           \
 -datafileDestination “/u01/app/oradata/ORCL”                                        \
 -redoLogFileSize 512                                                       \
 -emConfiguration NONE                                                     \
  -ignorePreReqs

This concludes the oracle database 19c installation on Linux 8


Categories

Leave a Reply

Your email address will not be published. Required fields are marked *