Sample : /etc/sysctl.conf for Oracle database

# Kernel sysctl configuration file for Red Hat Linux
#
# For binary values, 0 is disabled, 1 is enabled.  See sysctl(8) and
# sysctl.conf(5) for more details.
#
# Use '/sbin/sysctl -a' to list all possible parameters.

# Controls IP packet forwarding
net.ipv4.ip_forward = 0

# Controls source route verification

# Do not accept source routing
net.ipv4.conf.default.accept_source_route = 0

# Controls the System Request debugging functionality of the kernel
kernel.sysrq = 0

# Controls whether core dumps will append the PID to the core filename.
# Useful for debugging multi-threaded applications.
kernel.core_uses_pid = 1

# Controls the use of TCP syncookies
net.ipv4.tcp_syncookies = 1

# Controls the default maxmimum size of a mesage queue
kernel.msgmnb = 65536

# Controls the maximum size of a message, in bytes
kernel.msgmax = 65536

# Controls the maximum shared segment size, in bytes

# Controls the maximum number of shared memory segments, in pages

# Oracle Settings - Start


# Available Server Memory = 512 GB
# Database Server, Maximum Oracle SGA = 392 GB, PGA = 60 GB, 76% of total memory allocated, total free = 60 GB
# Note: Oracle memory Granule size increases with larger SGA's, verify the changes to the database memory pool calculations.
# Huge Pages Reserved = 324 GB


#
# Shared Memory settings are used to allow different system processes to access common data with no performance overhead.
#
kernel.shmmni = 4096
# for 512 GB available memory:

kernel.shmmax = 536870912000
# in bytes, total memory - 12 GB buffer,  GB
kernel.shmall = 124256256
# in pages, shmmax / 4096 bytes page size ("getconf PAGE_SIZE")


#
# Huge Pages memory is reserved upon OS startup for the Oracle Database SGA.
# Huge Page Size = 2 MB ("cat /proc/meminfo | grep -i hugepagesize")
# The value for vm.nr_hugepages must be calculated using Oracle MOS 401749.1
#
#vm.nr_hugepages = 165988
vm.nr_hugepages = 170888
# in pages, (memory in MB to reserve for huge pages) / (huge page size 2 MB) + extra huge pages, 324 GB

#
# Memory kept free for use by special reserves including "atomic" allocations (those which cannot wait for reclaim).
#

vm.min_free_kbytes = 1048576
# 1024 MB, minimum for RAC 512 MB, for total memory > 128 GB
#
# Maximum memory map entries per process. For e.g. higher values enables a single Oracle server process to use PGA memory > 4GB.
#
vm.max_map_count = 262144
# default 65536 = 4 GB, 262144 = 16 GB, for total memory >= 62 GB


#
# A low swappiness value causes the kernel to avoid swapping, a higher value causes the kernel to try to use swap space.
#
vm.swappiness=10


#
# Semaphore Settings
#
kernel.sem = 256 32000 100 142


#
# Networking Settings determine how much kernel buffer memory, in bytes, is allocated per socket opened for network reads (rmem) and writes (wmem).
#
net.core.rmem_default = 262144
net.core.rmem_max     = 4194304
net.core.wmem_default = 262144
net.core.wmem_max     = 1048576



#
# ip_local_port_range defines the local port range for TCP and UDP traffic to choose from.
#
net.ipv4.ip_local_port_range = 9000 65500
net.ipv4.tcp_tw_recycle = 0
# Disable fast recycling time-wait sockets


#
# IPC Message Limits
#
kernel.msgmax = 131072
# Maximum size of a single System V message, in bytes
kernel.msgmnb = 131072
# Maximum number of bytes that can be on any one message queue
kernel.msgmni = 2878
# Maximum number of IPC message queues that can be created



# Kernel Panic Control
# If set to 0, the system tries to continue operations if the kernel encounters an oops or BUG condition.
# If set to 1 (default), the system delays a few seconds to give the kernel log daemon, klogd, time to record the oops output before the panic occurs.
#
kernel.panic_on_oops = 1


#
# I/O Settings
#
fs.file-max = 6815744
fs.aio-max-nr = 3145728

# Oracle Settings - End
##Oracle build   -   PB-v20150310  u20171006_020743   - Do not modify ##

Comments