Advertisement

Friday, May 10, 2019

Oracle Database: Recommended RPM's except the default ones

In this blog I list RPM's which I always recommend on a Linux installation additional to what Oracle mandates. 

these RPM's are helpful on operational purposes and are required by DBAs and sys-admins when they are doing debugging of an issue. 

So below is the list which I do -
1. psmisc
2. bc
3. unzip
4. zip
5. bind-utils 
6. iotop
7. traceroute
8. tcpdump
9. strace
10. lsof 
11. sysstat
12. procps-ng
13. net-tools
14. iptraf-ng


to install (if you have yum confiugred)

yum install psmisc bc unzip zip bind-utils iotop traceroute tcpdump strace lsof sysstat procps-ng net-tools -y

Tuesday, May 7, 2019

Oracle Database: Updating Grid / Oracle Inventory Manually

In this small blog, I will tell you how to update the inventory file with node names manually.

This is useful in many cases
1.  Inventory does not have node names
2. RAC Node addition / deletion - automatic update does not happen
3. During Installation - inventory does not have node names


Case 1
Update Inventory RAC Node - Add Node names
(To be run as grid installation owner)
$ /opt/oracle/product/180/grid/oui/bin/runInstaller -silent -ignoreSysPrereqs -updateNodeList ORACLE_HOME=/opt/oracle/product/180/grid "CLUSTER_NODES={Node1,Node2}" CRS=true LOCAL_NODE=Node1

This will update the inventory on all cluster nodes (2 in this case)

Case 2
Update only on one node in case of cluster installation
(To be run as grid installation owner)
$ /opt/oracle/product/180/grid/oui/bin/runInstaller -updateNodeList -noClusterEnabled ORACLE_HOME=/opt/oracle/product/180/grid "CLUSTER_NODES={Node1,Node2}" CRS=true  LOCAL_NODE=Node2

Oracle Database: VOTE Disk (Closed) / Not Available

In this blog I am going to discuss an issue which I faced during my maintenance on cluster. 
One of the votedisk became unavailable and was dropped from the system in my cluster.


crsctl will only show me 2 Vote disks


$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   578049fd7bd34f51bfdf9cd7d2e02205 (/dev/oracleasm/disks/OCR_VOTE1) [OCR_VOTE]
 3. ONLINE   232d262659714f84bfbede64f662f566 (/dev/oracleasm/disks/OCR_VOTE2) [OCR_VOTE]

From V$asm_disk I try to see the status of disk. 

SQL> select mount_status, path, header_status, mode_status from V$asm_disk  where path like '%OCR_VOTE%'


MOUNT_S PATH                                     HEADER_STATU MODE_ST
------- ---------------------------------------- ------------ -------
CLOSED  /dev/oracleasm/disks/OCR_VOTE2           MEMBER       ONLINE
CACHED  /dev/oracleasm/disks/OCR_VOTE3           MEMBER       ONLINE
CACHED  /dev/oracleasm/disks/OCR_VOTE1           MEMBER       ONLINE

Solution  - I add back the Disk to Diskgroup
SQL> alter diskgroup OCR_VOTE add disk '/dev/oracleasm/disks/OCR_VOTE2' force;
(Reference - 
OCR / Vote disk Maintenance Operations: (ADD/REMOVE/REPLACE/MOVE) (Doc ID 428681.1)

and then I check the status again from v$asm_disk and crsctl

SQL> select mount_status, path, header_status, mode_status from V$asm_disk  where path like '%OCR_VOTE%' ;

MOUNT_S PATH                                     HEADER_STATU MODE_ST
------- ---------------------------------------- ------------ -------
CACHED  /dev/oracleasm/disks/OCR_VOTE3           MEMBER       ONLINE
CACHED  /dev/oracleasm/disks/OCR_VOTE2           MEMBER       ONLINE
CACHED  /dev/oracleasm/disks/OCR_VOTE1           MEMBER       ONLINE

$ crsctl query css votedisk
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   578049fd7bd34f51bfdf9cd7d2e02205 (/dev/oracleasm/disks/OCR_VOTE1) [OCR_VOTE]
 2. ONLINE   65cc344fc7da4fbbbf22772629b12203 (/dev/oracleasm/disks/OCR_VOTE3) [OCR_VOTE]
 3. ONLINE   232d262659714f84bfbede64f662f566 (/dev/oracleasm/disks/OCR_VOTE2) [OCR_VOTE]

Monday, May 6, 2019

Oracle Database 19c: Grid Infrastructure / RAC Silent Installation

In this blog I will be telling you how to install Oracle 19c RAC in Silent Mode. 
Remember the key thing with RAC is that it requires a lot of pre-req. I have already shown in my previous blog Series on how to get those pre-req done. 
You can find the details of pre-req completion in below 2 Parts. 

Part 1
Part 2 

Now @ this stage I will be working only on the silent installation steps 

In this blog I will be using a newer version of Oracle Linux (7.5 - Kernel 4.1.12-112.16.4.el7uek.x86_64)

This assumes
1. You have setup your linux machine
2. Made a clone and changed the hostname
3. Assigned IP addresses to Public and private interfaces
4. Unzipped grid software in /u01/app/190/grid

(unzip -qq LINUX.X64_193000_grid_home.zip -d /u01/app/190/grid)



Cluster Pre-install
1. Setup passwordless ssh between users
cd 

[As grid Node 1]
$ cd /u01/app/190/grid/deinstall
$ ./sshUserSetup.sh -user grid -hosts "oelrac19c01 oelrac19c02" -noPromptPassphrase -confirm -advanced

2. Do the Pre-checks. Ensure they pass successfully. 
[As grid Node 1]
$ ./runcluvfy.sh stage -pre crsinst -n oelrac19c01,oelrac19c02 -r 19 -osdba dba  -orainv oinstall -asm -presence local -asmgrp asmadmin -asmdev /dev/oracleasm/disks/OCR_VOTE1,/dev/oracleasm/disks/OCR_VOTE2,/dev/oracleasm/disks/OCR_VOTE3  -crshome /u01/app/190/grid -fixup -verbose

Response File 
Response File is the key for silent installation. You can find the response file 
oracle.install.responseFileVersion=/oracle/install/rspfmt_crsinstall_response_schema_v19.0.0
INVENTORY_LOCATION=/u01/app/oraInventory
oracle.install.option=CRS_CONFIG
ORACLE_BASE=/u01/app/grid
oracle.install.asm.OSDBA=oinstall
oracle.install.asm.OSOPER=
oracle.install.asm.OSASM=asmadmin
oracle.install.crs.config.scanType=LOCAL_SCAN
oracle.install.crs.config.gpnp.scanName=rac-scan
oracle.install.crs.config.gpnp.scanPort=1521
oracle.install.crs.config.ClusterConfiguration=STANDALONE
oracle.install.crs.config.configureAsExtendedCluster=false
oracle.install.crs.config.clusterName=rac-cluster
oracle.install.crs.config.gpnp.configureGNS=false
oracle.install.crs.config.autoConfigureClusterNodeVIP=false
oracle.install.crs.config.clusterNodes=oelrac19c01.novalocal:oelrac19c01-vip.novalocal,oelrac19c02.novalocal:oelrac19c02-vip.novalocal
oracle.install.crs.config.networkInterfaceList=eth0:192.168.10.0:1,eth1:192.168.30.0:5
oracle.install.crs.configureGIMR=true
oracle.install.asm.configureGIMRDataDG=false
oracle.install.crs.config.storageOption=FLEX_ASM_STORAGE
oracle.install.asm.SYSASMPassword=Oracle123
oracle.install.asm.diskGroup.name=OCR
oracle.install.asm.diskGroup.redundancy=NORMAL
oracle.install.asm.diskGroup.AUSize=4
oracle.install.asm.diskGroup.disksWithFailureGroupNames=/dev/oracleasm/disks/OCR_VOTE1,,/dev/oracleasm/disks/OCR_VOTE2,,/dev/oracleasm/disks/OCR_VOTE3,
oracle.install.asm.diskGroup.disks=/dev/oracleasm/disks/OCR_VOTE1,/dev/oracleasm/disks/OCR_VOTE2,/dev/oracleasm/disks/OCR_VOTE3
oracle.install.asm.diskGroup.diskDiscoveryString=/dev/oracleasm/disks/*
oracle.install.asm.monitorPassword=Oracle123
oracle.install.asm.gimrDG.AUSize=1
oracle.install.asm.configureAFD=false
oracle.install.crs.configureRHPS=false
oracle.install.crs.config.ignoreDownNodes=false
oracle.install.config.managementOption=NONE
oracle.install.crs.rootconfig.executeRootScript=false


3. Execute Pre-checks with Response File
(Failure of RPM DB checks is fine)
$ /u01/app/190/grid/gridSetup.sh -silent   -waitForCompletion  -responseFile /home/grid/grid_install.rsp


4. Start with Installation.
[As grid Node 1]
$ /u01/app/190/grid/gridSetup.sh -silent   -waitForCompletion  -responseFile /home/grid/grid_install.rsp

Launching Oracle Grid Infrastructure Setup Wizard...
[WARNING] [INS-13014] Target environment does not meet some optional requirements.
   CAUSE: Some of the optional prerequisites are not met. See logs for details. gridSetupActions2019-05-06_10-10-38AM.log
   ACTION: Identify the list of failed prerequisite checks from the log: gridSetupActions2019-05-06_10-10-38AM.log. Then either from the log file or from installation manual find the appropriate configuration to meet the prerequisites and fix it manually.
The response file for this session can be found at:
 /u01/app/190/grid/install/response/grid_2019-05-06_10-10-38AM.rsp

You can find the log of this install session at:
 /tmp/GridSetupActions2019-05-06_10-10-38AM/gridSetupActions2019-05-06_10-10-38AM.log
As a root user, execute the following script(s):
        1. /u01/app/oraInventory/orainstRoot.sh
        2. /u01/app/190/grid/root.sh

Execute /u01/app/oraInventory/orainstRoot.sh on the following nodes:
[oelrac19c01, oelrac19c02]
Execute /u01/app/190/grid/root.sh on the following nodes:
[oelrac19c01, oelrac19c02]

Run the script on the local node first. After successful completion, you can start the script in parallel on all other nodes.

Successfully Setup Software with warning(s).
As install user, execute the following command to complete the configuration.
        /u01/app/190/grid/gridSetup.sh -executeConfigTools -responseFile /home/grid/grid_install.rsp [-silent]


Moved the install session logs to:
 /u01/app/oraInventory/logs/GridSetupActions2019-05-06_10-10-38AM

4. Root Script Execution
[Node 1 - /u01/app/oraInventory/orainstRoot.sh]

/u01/app/oraInventory/orainstRoot.sh

Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.

The execution of the script is complete.

[Node 2 - /u01/app/oraInventory/orainstRoot.sh]


/u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.

The execution of the script is complete.

[Node 1 - /u01/app/190/grid/root.sh]
Check /u01/app/190/grid/install/root_oelrac19c01.novalocal_2019-05-06_10-16-38-092662119.log for the output of root script
The following environment variables are set as:
    ORACLE_OWNER= grid
    ORACLE_HOME=  /u01/app/190/grid
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Relinking oracle with rac_on option
Using configuration parameter file: /u01/app/190/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/oelrac19c01/crsconfig/rootcrs_oelrac19c01_2019-05-06_10-16-52AM.log
2019/05/06 10:17:04 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'.
2019/05/06 10:17:04 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'.
2019/05/06 10:17:04 CLSRSC-363: User ignored prerequisites during installation
2019/05/06 10:17:04 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'.
2019/05/06 10:17:06 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'.
2019/05/06 10:17:07 CLSRSC-594: Executing installation step 5 of 19: 'SetupOSD'.
2019/05/06 10:17:07 CLSRSC-594: Executing installation step 6 of 19: 'CheckCRSConfig'.
2019/05/06 10:17:07 CLSRSC-594: Executing installation step 7 of 19: 'SetupLocalGPNP'.
2019/05/06 10:17:26 CLSRSC-594: Executing installation step 8 of 19: 'CreateRootCert'.
2019/05/06 10:17:31 CLSRSC-4002: Successfully installed Oracle Trace File Analyzer (TFA) Collector.
2019/05/06 10:17:32 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'.
2019/05/06 10:17:43 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'.
2019/05/06 10:17:43 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'.
2019/05/06 10:17:49 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'.
2019/05/06 10:17:49 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'
2019/05/06 10:18:51 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'.
2019/05/06 10:18:57 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'.
2019/05/06 10:19:03 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'.
2019/05/06 10:19:08 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'.

ASM has been created and started successfully.

[DBT-30001] Disk groups created successfully. Check /u01/app/grid/cfgtoollogs/asmca/asmca-190506AM101940.log for details.

2019/05/06 10:20:33 CLSRSC-482: Running command: '/u01/app/190/grid/bin/ocrconfig -upgrade grid oinstall'
CRS-4256: Updating the profile
Successful addition of voting disk 2ff9dffc35ee4fccbf62a447d521467a.
Successful addition of voting disk c4627f0308db4f2fbf72661f27dd0237.
Successful addition of voting disk 1d28aff2edd44fe6bf4ec93c523991c5.
Successfully replaced voting disk group with +OCR.
CRS-4256: Updating the profile
CRS-4266: Voting file(s) successfully replaced
##  STATE    File Universal Id                File Name Disk group
--  -----    -----------------                --------- ---------
 1. ONLINE   2ff9dffc35ee4fccbf62a447d521467a (/dev/oracleasm/disks/OCR_VOTE1) [OCR]
 2. ONLINE   c4627f0308db4f2fbf72661f27dd0237 (/dev/oracleasm/disks/OCR_VOTE2) [OCR]
 3. ONLINE   1d28aff2edd44fe6bf4ec93c523991c5 (/dev/oracleasm/disks/OCR_VOTE3) [OCR]
Located 3 voting disk(s).
2019/05/06 10:21:57 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'.
2019/05/06 10:22:58 CLSRSC-343: Successfully started Oracle Clusterware stack
2019/05/06 10:22:58 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'.
2019/05/06 10:24:33 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'.

2019/05/06 10:25:02 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded


[Node 2 - /u01/app/190/grid/root.sh]

Check /u01/app/190/grid/install/root_oelrac19c02.novalocal_2019-05-06_10-25-39-630791710.log for the output of root script
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= grid
    ORACLE_HOME=  /u01/app/190/grid
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Relinking oracle with rac_on option
Using configuration parameter file: /u01/app/190/grid/crs/install/crsconfig_params
The log of current session can be found at:
  /u01/app/grid/crsdata/oelrac19c02/crsconfig/rootcrs_oelrac19c02_2019-05-06_10-25-52AM.log
2019/05/06 10:25:59 CLSRSC-594: Executing installation step 1 of 19: 'SetupTFA'.
2019/05/06 10:25:59 CLSRSC-594: Executing installation step 2 of 19: 'ValidateEnv'.
2019/05/06 10:25:59 CLSRSC-363: User ignored prerequisites during installation
2019/05/06 10:25:59 CLSRSC-594: Executing installation step 3 of 19: 'CheckFirstNode'.
2019/05/06 10:26:00 CLSRSC-594: Executing installation step 4 of 19: 'GenSiteGUIDs'.
2019/05/06 10:26:00 CLSRSC-594: Executing installation step 5 of 19: 'SetupOSD'.
2019/05/06 10:26:00 CLSRSC-594: Executing installation step 6 of 19: 'CheckCRSConfig'.
2019/05/06 10:26:01 CLSRSC-594: Executing installation step 7 of 19: 'SetupLocalGPNP'.
2019/05/06 10:26:02 CLSRSC-594: Executing installation step 8 of 19: 'CreateRootCert'.
2019/05/06 10:26:02 CLSRSC-594: Executing installation step 9 of 19: 'ConfigOLR'.
2019/05/06 10:26:07 CLSRSC-594: Executing installation step 10 of 19: 'ConfigCHMOS'.
2019/05/06 10:26:07 CLSRSC-594: Executing installation step 11 of 19: 'CreateOHASD'.
2019/05/06 10:26:08 CLSRSC-594: Executing installation step 12 of 19: 'ConfigOHASD'.
2019/05/06 10:26:09 CLSRSC-330: Adding Clusterware entries to file 'oracle-ohasd.service'
2019/05/06 10:26:24 CLSRSC-4002: Successfully installed Oracle Trace File Analyzer (TFA) Collector.
2019/05/06 10:27:09 CLSRSC-594: Executing installation step 13 of 19: 'InstallAFD'.
2019/05/06 10:27:11 CLSRSC-594: Executing installation step 14 of 19: 'InstallACFS'.
2019/05/06 10:27:13 CLSRSC-594: Executing installation step 15 of 19: 'InstallKA'.
2019/05/06 10:27:14 CLSRSC-594: Executing installation step 16 of 19: 'InitConfig'.
2019/05/06 10:27:22 CLSRSC-594: Executing installation step 17 of 19: 'StartCluster'.
2019/05/06 10:28:12 CLSRSC-343: Successfully started Oracle Clusterware stack
2019/05/06 10:28:12 CLSRSC-594: Executing installation step 18 of 19: 'ConfigNode'.
2019/05/06 10:28:25 CLSRSC-594: Executing installation step 19 of 19: 'PostConfig'.

2019/05/06 10:28:31 CLSRSC-325: Configure Oracle Grid Infrastructure for a Cluster ... succeeded


[Node 1 - Run Post Config] 
$ /u01/app/190/grid/gridSetup.sh -executeConfigTools -responseFile /home/grid/grid_install.rsp -silent
Launching Oracle Grid Infrastructure Setup Wizard...
You can find the logs of this session at:
/u01/app/oraInventory/logs/GridSetupActions2019-05-06_10-30-51AM

You can find the log of this install session at:
 /u01/app/oraInventory/logs/UpdateNodeList2019-05-06_10-30-51AM.log


Successfully Configured Software.


This completes silent installation of Oracle Cluster 2 Node 19c

Thursday, May 2, 2019

Oracle Database - 19c DB Creation

In this blog I will discuss on how to create a database after your installation. 
My previous blog discussed on database binaries installation for Oracle Database. 

In this blog I will continue from the last point and create a database. 


 cd /u01/app/oracle/product/193/dbhome_1/bin
$ ./dbca
















This completes the database creation.

Oracle Database - 19c: On Premise Installation - Oracle Linux (7.5) - Part 2

The second part of the blog discusses on how to install 19c once all the pre-req are complete. 


Download the required software from 
http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

Make sure to accept the license agreement before downloading. 

Once you have the software then Create the directories

[As root]
mkdir /u01

chown oracle:oinstall /u01

[Connect as user - oracle]
mkdir -p /u01/app/oracle/product/193/dbhome_1

Copy the Downloaded file to /u01/app/oracle/product/193/dbhome_1

unzip -qq LINUX.X64_193000_db_home.zip

Working Directory = /u01/app/oracle/product/193/dbhome_1
Run - runInstaller and follow the steps as in the Screenshots
(./runInstaller)













At this point you will be prompted for root script execution.
Run the root Scripts as follows.



Script 1
[root@oraclebox19c /]# /u01/app/oraInventory/orainstRoot.sh
Changing permissions of /u01/app/oraInventory.
Adding read,write permissions for group.
Removing read,write,execute permissions for world.

Changing groupname of /u01/app/oraInventory to oinstall.

The execution of the script is complete.


Script 2
[root@oraclebox19c /]# /u01/app/oracle/product/193/dbhome_1/root.sh
Performing root user operation.

The following environment variables are set as:
    ORACLE_OWNER= oracle
    ORACLE_HOME=  /u01/app/oracle/product/193/dbhome_1

Enter the full pathname of the local bin directory: [/usr/local/bin]:
   Copying dbhome to /usr/local/bin ...
   Copying oraenv to /usr/local/bin ...
   Copying coraenv to /usr/local/bin ...


Creating /etc/oratab file...
Entries will be added to the /etc/oratab file as needed by
Database Configuration Assistant when a database is created
Finished running generic part of root script.
Now product-specific root actions will be performed.
Oracle Trace File Analyzer (TFA - Standalone Mode) is available at :
    /u01/app/oracle/product/193/dbhome_1/bin/tfactl

Note :
1. tfactl will use TFA Service if that service is running and user has been granted access
2. tfactl will configure TFA Standalone Mode only if user has no access to TFA Service or TFA is not installed


Press okay after complete and Close to complete the installation. 

Oracle Database - 19c: On Premise Installation - Oracle Linux (7.5) - Part 1

In this blog I discuss installation of Oracle 19c on premise. 

The part 1 covers the pre-requisites installation and part 2 covers the installation. 

Pre-requistites

The easy and fast way of covering the preq-reqs on Oracle Linux is to use Oracle validated rpm for 19c Linux. 

On a fresh installation of Oracle Linux (Linux oraclebox19c.novalocal 4.1.12-112.16.4.el7uek.x86_64 )
This is version 7.5 Oracle Linux


[root@orclbox19c ~]# yum install oracle-database-preinstall-19c.x86_64 -y

You can find the changes it did from /var/log/oracle-database-preinstall-19c/results
and backup of files from /var/log/oracle-database-preinstall-19c/backup

Swap Creation for both Manual and automated pre-req completion - http://o-dba.blogspot.com/2018/05/oracle-database-12c19c-swap-swapon.html


Manual Pre-reqs Install


1. Install required RPMs as per your Operating System and Kernel version & support. https://docs.oracle.com/en/database/oracle/oracle-database/19/ladbi/database-installation-guide-linux.pdf


2. User Creation


  • groupadd -g 54321 oinstall
  • groupadd -g 54322 dba
  • useradd -g 54321 -G dba -u 54321 oracle

3. Create file - /etc/sysctl.d/99-oracle-database-preinstall-19c-sysctl.conf

  • For shmmax - 90% of memory in KB
  • For shmmall - shmmax/4096
  • For vm.nr_hugepages = 80% of memory in MB / 2
  • 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
  • vm.nr_hugepages = 13100

4. Create file - /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-database-preinstall-19c setting for memlock soft/hard limit is maximum of 128GB on x86_64 or 3GB on x86 OR 90% of RAM
  • oracle   hard   memlock    134217728
  • oracle   soft   memlock    134217728
  • Disable Transparent Huge Pages

5. Add NOZEROCONF parameter in network configuration in file /etc/sysconfig/network
6. Disabling Transparent Hugepages - Refer Oracle Note:1557478.1
7. Disabling defrag - Refer Oracle Note:1557478.1