Created
October 10, 2013 20:50
-
-
Save thewellington/6925444 to your computer and use it in GitHub Desktop.
Modify sysctl.conf for Oracle
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# | |
# Change Linux kernel parameters prior to installing Oracle 11g R2 on RHEL 6.3 | |
# v2.0 by [email protected] 2012.11.20 | |
# | |
f='/etc/sysctl.conf' | |
# Get Total Memory in KB | |
memk=$(free|grep Mem|awk '{print$2}') | |
# Convert Memory to GB | |
memg=$(echo "$memk/1024/1024"|bc) | |
#Get page size | |
pagesizeb=$(getconf PAGE_SIZE) | |
# Calculate kernel.shmall and kernel.shmax | |
shmall=$(echo "$memg*1024^3/$pagesizeb"|bc) | |
shmmax=$(echo "$memg*1024^3/2"|bc) | |
## Calculate number of huge pages to allocate | |
hugepagesize=$(grep Hugepagesize /proc/meminfo|awk '{print$2}') | |
# create 1GB of huge pages | |
nr_hugepages=$(echo "1*1024^2/$hugepagesize"|bc) | |
## Begin making changes to sysctl.conf | |
# replace existing values for shmmall and shmax in sysctl.conf, and create bkup file | |
sed -i.bkup -e 's:\(kernel.shmmax = \)\([0-9]*\):\1'$shmmax':' \ | |
-e 's:\(kernel.shmall = \)\([0-9]*\):\1'$shmall':' $f | |
echo " | |
#### ORACLE Specific Info Below #### | |
kernel.shmmni = 4096 | |
# semaphores: semmsl, semmns, semopm, semmni | |
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 | |
vm.swappiness = 0 | |
vm.dirty_background_ration = 3 | |
vm.dirty_ratio = 15 | |
vm.dirty_expire_centisecs = 500 | |
vm.dirty_writeback_centisecs = 100 | |
vm.nr_hugepages = "$nr_hugepages >> $f |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment