以centos 6为例:
1.禁用hugePage
将hugepage的禁用脚本移动至/etc/init.d下,hugepage禁用脚本https://pan.baidu.com/s/156UUIEUnnSEUqXyVdwK_yA:
mv disable-transparent-hugepages /etc/init.d
chmod 755 /etc/init.d/disable-transparent-hugepages
chkconfig –add disable-transparent-hugepages
重启该机器,检查是否关闭
cat /sys/kernel/mm/redhat_transparent_hugepage/enabled
cat /sys/kernel/mm/redhat_transparent_hugepage/defrag
2.关闭zone reclaim
sysctl -w vm.zone_reclaim_mode=0
3.调节swappiness
sysctl vm.swappiness=1
echo “vm.swappiness=1” >> /etc/sysctl.conf
4.设置ulimit,永久更改编辑/etc/security/limits.conf
ulimit -n 65535
ulimit -u 30000
5.禁用SELinux
setenforce 0
sed -i s/SELINUX=enforcing/SELINUX=disabled/ /etc/selinux/config
6.设置tcpkeepalive
sysctl -w net.ipv4.tcp_keepalive_time=120
echo “net.ipv4.tcp_keepalive_time =120” >> /etc/sysctl.conf
7.设置readahead 永久更改配置到/etc/sysctl.conf下
blockdev –setra 0 <device>
8.关闭数据库文件的atime
vi /etc/fstab
ex: /dev/xvdb /data ext4 noatime 0 0
9.如果服务器是虚拟机的话,更改io调度算法
查看当前系统支持的IO调度:
dmesg | grep -i scheduler
查看当前系统的I/O调度方法:
cat /sys/block/sda/queue/scheduler
修改NOOP Scheduler
临时修改:
echo noop > /sys/block/sda/queue/scheduler
永久修改:
vi /boot/grub/menu.lst
# 添加 elevator=noop
kernel /vmlinuz-2.6.16.60-0.91.1-smp root=/dev/sysvg/root splash=silent splash=off showopts elevator=noop