*.open_cursors=3000
*.processes=3000
db_cache_size=127488M
shared_pool_size=16G
*.db_cache_size=751082405888
*.java_pool_size=3758096384
*.large_pool_size=536870912
*.shared_pool_size=19327352832
*.streams_pool_size=20M
*.sga_target=0
*.open_cursors=3000
*.processes=3000
oradl580.__pga_aggregate_target=0
db_cache_size=127488M
shared_pool_size=16G
*.db_cache_size=751082405888
*.java_pool_size=3758096384
*.large_pool_size=536870912
*.shared_pool_size=19327352832
*.streams_pool_size=20M
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.wmem_default = 262144
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range is 9000 65500
net.ipv4.ip_local_port_range = 9000 65500
vm.nr_hugepages = 77571
net.core.rmem_max = 134217728
net.core.wmem_max = 134217728
net.ipv4.tcp_rmem = 4096 87380 134217728
net.ipv4.tcp_wmem = 4096 65536 134217728
net.core.netdev_max_backlog = 300000
The following is what’s contained in the file /etc/tune-profiles/oracle/ktune.sh.
#!/bin/sh
# Oracle ktune script
# based on the enterprise-storage profile
. /etc/tune-profiles/functions
start() {
set_cpu_governor performance
set_transparent_hugepages never
disable_disk_barriers
multiply_disk_readahead 4
return 0
}
stop() {
restore_cpu_governor
restore_transparent_hugepages
enable_disk_barriers
restore_disk_readahead
return 0
}
The following is what’s contained in the file /etc/tune-profiles/oracle/ktune.sysconfig.
# Oracle ktune service configuration
# based on the enterprise storage profile
# This is the ktune sysctl file. You can comment this out to prevent ktune
# from applying its sysctl settings.
SYSCTL="/etc/sysctl.ktune"
# Use *.conf files in the ktune configuration directory /etc/ktune.d.
# Value: yes|no, default: yes
# It is useful if you want to load settings from additional files. Set this to
# no if you to prevent ktune from using these additional files.
USE_KTUNE_D="yes"
# This is the custom sysctl configuration file. Any settings in this file will
# be applied before the ktune settings, thus may be overridden by ktune.
SYSCTL_PRE="/etc/sysctl.d/* /etc/sysctl.conf"
# This is the custom sysctl configuration file. Any settings in this file will
# be applied after the ktune settings, overriding them
#SYSCTL_POST="/etc/sysctl.d/* /etc/sysctl.conf"
# This is the I/O scheduler ktune will use. This will *not* override anything
# explicitly set on the kernel command line, nor will it change the scheduler
# for any block device that is using a non-default scheduler when ktune starts.
# You should probably leave this on "deadline", but "as", "cfq", and "noop" are
# also legal values. Comment this out to prevent ktune from changing I/O
# scheduler settings.
ELEVATOR="deadline"
# These are the devices, that should be tuned with the ELEVATOR
ELEVATOR_TUNE_DEVS="/sys/block/{sd,cciss,dm-,vd}*/queue/scheduler"
The following is what’s contained in the file /etc/tune-profiles/oracle/sysctl.ktune.
# Oracle ktune sysctl settings
# based on the enterprise-storage profile
# ktune sysctl settings for rhel6 servers with enterprise-class
# storage, maximizing i/o throughput
#
# Minimal preemption granularity for CPU-bound tasks:
# (default: 1 msec# (1 + ilog(ncpus)), units: nanoseconds)
kernel.sched_min_granularity_ns = 10000000
# SCHED_OTHER wake-up granularity.
# (default: 1 msec# (1 + ilog(ncpus)), units: nanoseconds)
#
# This option delays the preemption effects of decoupled workloads
# and reduces their over-scheduling. Synchronous workloads will still
# have immediate wakeup/sleep latencies.
kernel.sched_wakeup_granularity_ns = 15000000
# If a workload mostly uses anonymous memory and it hits this limit, the
entire
# working set is buffered for I/O, and any more write buffering would
require
# swapping, so it's time to throttle writes until I/O can catch up.
Workloads
# that mostly use file mappings may be able to use even higher values.
#
# Oracle specific tunings
vm.swappiness = 1
vm.dirty_background_ratio = 3
vm.dirty_ratio = 80
vm.dirty_expire_centisecs = 500
vm.dirty_writeback_centisecs = 100
kernel.shmmax = 4398046511104
kernel.shmall = 1073741824
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
fs.file-max = 6815744
fs.aio-max-nr = 1048576
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
kernel.panic_on_oops = 1
The following is what’s contained in the file /etc/tune-profiles/oracle/tuned.conf.
# Oracle tuned profile
# based on the enterprise-storage profile
[main]
[DiskMonitor]
enabled=False
[DiskTuning]
enabled=False
[NetMonitor]
enabled=False
[NetTuning]
enabled=False
[CPUMonitor]
enabled=False
[CPUTuning]
enabled=False
#!/bin/bash
for i in ` ps -ef|grep ora_lg|grep -v ASM|grep -v grep|cut -c9-15`
do
renice -1 ${i}
done
for i in ` ps -ef|grep ora_dbw|grep -v ASM|grep -v grep|cut -c9-15`
do
renice -1 ${i}
done