Installing Oracle Database 19.3.0.0 on RHEL 8.7
Operating System: RHEL 8.7, 8.10
Database Software: LINUX.X64_193000_db_home.zip
Oracle Oracle Single Instance Requirements
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' \ bc binutils elfutils-libelf elfutils-libelf-devel fontconfig-devel \ glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau \ libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel \ libxcb libibverbs make smartmontools sysstat unzip xorg-x11-xauth
Configuring Operating Systems for Oracle Single Instance
Disabling Firewall and SElinux.
systemctl disable firewalld --now sed -i '/SELINUX=/{s/enforcing/disabled/}' /etc/selinux/config
Disabling Zero Configuration Network.
cp -p /etc/sysconfig/network{,.bak.`date +%Y%m%d`}echo "NOZEROCONF=yes" >>/etc/sysconfig/network
Disabling Transparent Huagepages.
・ How to disable transparent hugepages (THP) on Red Hat Enterprise Linux 7, 8 and 9
Configuring Public, Private, Virtual and SCAN IP names and Addresses.
cat >>/etc/hosts <<EOF 192.168.3.108 oracle19c EOF
・ Configuring Yum Repositories .
Installing Operating System Packages.
dnf -y install \ bc binutils elfutils-libelf elfutils-libelf-devel fontconfig-devel \ glibc glibc-devel ksh libaio libaio-devel libXrender libX11 libXau \ libXi libXtst libgcc libnsl librdmacm libstdc++ libstdc++-devel \ libxcb libibverbs make smartmontools sysstat unzip xorg-x11-xauth
Configuring Users, Groups and Environments for Oracle Grid Infrastructure and Oracle Database
Create Oracle software owner user accounts on each cluster node
groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper groupadd -g 54324 backupdba groupadd -g 54325 dgdba groupadd -g 54326 kmdba groupadd -g 54330 racdba useradd -u 54321 -g oinstall -G dba,oper,backupdba,dgdba,kmdba,racdba -m -d /home/oracle -s /bin/bash -c "Oracle Software Owner" oracle echo "oracle" | passwd --stdin oracle
Create Grid home and Oracle home directories on each cluster node.
mkdir -p /u01/app/oracle/product/19.0.0/dbhome_1chown -R oracle:oinstall /u01chmod -R 775 /u01
Configure Oracle Software owner user account environment on each cluster node.
cat >> /home/oracle/.bash_profile << "EOF" export CV_ASSUME_DISTID=OEL7umask 022export ORACLE_SID=cocoexport ORACLE_BASE=/u01/app/oracleexport ORACLE_HOME=$ORACLE_BASE /product/19.0.0/dbhome_1export PATH=$ORACLE_HOME /bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME /lib:/lib:/usr/libexport CLASSPATH=$ORACLE_HOME /JRE:$ORACLE_HOME /jlib:$ORACLE_HOME /rdbms/jlibif command -v rlwrap >/dev/null 2>&1; then alias sqlplus='rlwrap sqlplus' alias rman='rlwrap rman' fi EOF
Completing Preinstallation Tasks Manually
Configuring Kernel Parameters for Linux
Create or edit the /etc/sysctl.d/97-oracle-database-19c-sysctl.conf file, and add or edit lines similar to:
cat > /etc/sysctl.d/97-oracle-database-19c-sysctl.conf << EOF fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1835008 kernel.shmmax = 6442450944 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 vm.nr_hugepages = 3584 EOF
Configuring Resource Limits for Oracle Software Installation Users
cat > /etc/security/limits.d/97-oracle-database-19c-limits.conf << EOF oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768 oracle hard memlock 10869992 oracle soft memlock 10869992 EOF
Installing the Oracle Database Software
Download and change the Oracle Database image files permissions.
chown -R oracle:oinstall /soft/LINUX.X64_193000_db_home.zip
Log in as the oracle user, extract the files into the Grid home.
unzip -q /soft/LINUX.X64_193000_db_home.zip -d $ORACLE_HOME
Log in as the oracle user, Run installer.
export CV_ASSUME_DISTID=OEL7$ORACLE_HOME /runInstaller
Post Installation Tasks
・ Configuring Automatic Restart of an Oracle Database
Patch
34133642 - Database Release Update 19.16.0.0.220719.
・ Patch 34133642_190000
Create a Instance with character UTF8
The character UTF8 is deprecated on Oracle 19c.
Setting Listener
~]$ cat /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/listener.ora LI_COCO = (DESCRIPTION_LIST = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle19c)(PORT = 1522)) ) ) ~]$ cat /u01/app/oracle/product/19.0.0/dbhome_1/network/admin/tnsnames.ora COCO = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle19c)(PORT = 1522)) (CONNECT_DATA = (SERVER = DEDICATED) (SERVICE_NAME = coco) ) ) LISTENER_COCO = (ADDRESS = (PROTOCOL = TCP)(HOST = oracle19c)(PORT = 1522)) SYS@coco> show parameter listener NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ forward_listener string listener_networks string local_listener string LISTENER_COCO remote_listener string SYS@coco> ALTER SYSTEM SET LOCAL_LISTENER = 'LISTENER_GM2RPNP' scope=both; SYS@coco> ALTER SYSTEM REGISTER;
Troubleshooting
Issue: ORA-00800: soft external error, arguments: [Set Priority Failed], [VKTM]
~]$ grep -2 'ORA-00800' /u01/app/oracle/diag/rdbms/orcl/orcl/trace/alert_orcl.log 2025-08-28T16:15:00.394152+08:00 Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_9713.trc (incident=10285): ORA-00800: soft external error, arguments: [Set Priority Failed], [VKTM], [Check traces and OS configuration], [Check Oracle document and MOS notes], [] Incident details in: /u01/app/oracle/diag/rdbms/orcl/orcl/incident/incdir_10285/orcl_vktm_9713_i10285.trc 2025-08-28T16:15:00.396278+08:00 ~]$ cat /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_9713.trc Trace file /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_9713.trc Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production Version 19.3.0.0.0 Build label: RDBMS_19.3.0.0.0DBRU_LINUX.X64_190417 ORACLE_HOME: /u01/app/oracle/product/19.0.0/dbhome_1 System name: Linux Node name: oracle19c Release: 4.18.0-553.el8_10.x86_64 Version: #1 SMP Fri May 10 15:19:13 EDT 2024 Machine: x86_64 Instance name: orcl Redo thread mounted by this instance: 0 <none> Oracle process number: 5 Unix process pid: 9713, image: oracle@oracle19c (VKTM) *** 2025-08-28T16:15:00.394972+08:00 *** CLIENT ID:() 2025-08-28T16:15:00.394995+08:00 *** SERVICE NAME:() 2025-08-28T16:15:00.395000+08:00 *** MODULE NAME:() 2025-08-28T16:15:00.395004+08:00 *** ACTION NAME:() 2025-08-28T16:15:00.395010+08:00 *** CLIENT DRIVER:() 2025-08-28T16:15:00.395024+08:00 2025-08-28T16:15:00.394740+08:00 Incident 10285 created, dump file: /u01/app/oracle/diag/rdbms/orcl/orcl/incident/incdir_10285/orcl_vktm_9713_i10285.trc ORA-00800: soft external error, arguments: [Set Priority Failed], [VKTM], [Check traces and OS configuration], [Check Oracle document and MOS notes], [] *** SESSION ID:(127.44644) 2025-08-28T16:15:00.469736+08:00 *** SERVICE NAME:() 2025-08-28T16:15:00.469762+08:00 kstmmainvktm: failed in setting elevated priority Verify: SETUID is set on ORADISM and restart the instance highres_enabled VKTM running at (100ms) precision kstmrmtickcntkeeper: param _dbrm_quantum will not be effective [Start] HighResTick = 4277986657 kstmrmtickcnt = 0, ksudbrmseccnt[0] = 1756368900 [End] HighResTick = 11816137011 *** 2025-08-28T18:20:38.798522+08:00 kstmrmtickcnt = 75302, ksudbrmseccnt[7530] = 1756376438 adrci> show incident -mode detail -p "incident_id=10285" ADR Home = /u01/app/oracle/diag/rdbms/orcl/orcl: ************************************************************************* ********************************************************** INCIDENT INFO RECORD 1 ********************************************************** INCIDENT_ID 10285 STATUS ready CREATE_TIME 2025-08-28 16:15:00.392000 +08:00 PROBLEM_ID 1 CLOSE_TIME <NULL> FLOOD_CONTROLLED none ERROR_FACILITY ORA ERROR_NUMBER 800 ERROR_ARG1 Set Priority Failed ERROR_ARG2 VKTM ERROR_ARG3 Check traces and OS configuration ERROR_ARG4 Check Oracle document and MOS notes ERROR_ARG5 <NULL> ERROR_ARG6 <NULL> ERROR_ARG7 <NULL> ERROR_ARG8 <NULL> ERROR_ARG9 <NULL> ERROR_ARG10 <NULL> ERROR_ARG11 <NULL> ERROR_ARG12 <NULL> SIGNALLING_COMPONENT background_proc SIGNALLING_SUBCOMPONENT <NULL> SUSPECT_COMPONENT <NULL> SUSPECT_SUBCOMPONENT <NULL> ECID <NULL> IMPACTS 0 CON_UID 0 PROBLEM_KEY ORA 800 FIRST_INCIDENT 41 FIRSTINC_TIME 2025-08-28 15:46:58.193000 +08:00 LAST_INCIDENT 10285 LASTINC_TIME 2025-08-28 16:15:00.392000 +08:00 IMPACT1 0 IMPACT2 0 IMPACT3 0 IMPACT4 0 KEY_NAME ProcId KEY_VALUE 5.1 KEY_NAME Client ProcId KEY_VALUE oracle@oracle19c.9713_140701772284864 OWNER_ID 1 INCIDENT_FILE /u01/app/oracle/diag/rdbms/orcl/orcl/incident/incdir_10285/orcl_vktm_9713_i10285.trc OWNER_ID 1 INCIDENT_FILE /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_vktm_9713.trc
Reference:
・ https://www.cnblogs.com/lndt/p/18502332
・ https://www.modb.pro/db/1860334219730366464
Appendix
Install Oracle Database Software.
Create a Listener.
Create an Instance.