make a bash script to automate the prerequisite steps before installing Oracle 19c on Linux. This will save time and ensure consistency, especially if you need to prepare multiple servers.
Here’s a sample script you can use (tested for Oracle Linux / RHEL 7 & 8):
oracle19c_prereqs.sh
#!/bin/bash
# Oracle 19c Prerequisites Setup Script
# Run this script as root user
echo "========================================"
echo " Oracle 19c Pre-installation Setup Script"
echo "========================================"
# 1. Create groups and user
echo "[1/6] Creating groups and oracle user..."
groupadd oinstall
groupadd dba
id oracle &>/dev/null
if [ $? -ne 0 ]; then
useradd -g oinstall -G dba oracle
echo "Set password for oracle user:"
passwd oracle
else
echo "User oracle already exists. Skipping..."
fi
# 2. Create directories
echo "[2/6] Creating Oracle directories..."
mkdir -p /u01/app/oracle
mkdir -p /u01/app/oraInventory
chown -R oracle:oinstall /u01/app
chmod -R 775 /u01/app
# 3. Kernel parameters
echo "[3/6] Configuring kernel parameters..."
cat >> /etc/sysctl.conf <<EOF
# Oracle 19c settings
kernel.shmmax = 4294967295
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
EOF
sysctl -p
# 4. User limits
echo "[4/6] Configuring user limits..."
cat >> /etc/security/limits.conf <<EOF
# Oracle 19c settings
oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536
EOF
# 5. Required packages
echo "[5/6] Installing required packages..."
yum install -y binutils gcc gcc-c++ glibc glibc-devel ksh libaio \
libaio-devel libgcc libstdc++ libstdc++-devel make sysstat \
unixODBC unixODBC-devel compat-libcap1
# 6. Environment variables for oracle user
echo "[6/6] Configuring oracle environment..."
su - oracle -c "cat >> ~/.bash_profile <<EOF
# Oracle Environment
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=\$ORACLE_BASE/product/19c/dbhome_1
export ORACLE_SID=orcl
export PATH=\$ORACLE_HOME/bin:\$PATH
EOF"
echo "========================================"
echo " Oracle 19c prerequisites setup complete!"
echo " Now switch to oracle user and run installer."
echo " su - oracle"
echo " cd \$ORACLE_HOME"
echo " ./runInstaller"
echo "========================================"
🔧 Usage
- Save the script as oracle19c_prereqs.sh
- Make it executable:
chmod +x oracle19c_prereqs.sh
Run as root:
./oracle19c_prereqs.sh