mysql适合的操作系统
windows FreeBSD solaris linux
centos系统参数优化
内核相关参数 /etc/sysctl.conf
网络参数:
net.core.somaxconn = 65535
net.core.netdev_max_backlog = 65535
net.ipv4.tcp_max_syn_backlog = 65535
加快tcp回收:
net.ipv4.tcp_fin_timeout = 10
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
tcp连接接收和发送分区大小:
net.core.wmem_default = 87380
net.core.wmem_max = 16777216
net.core.rmem_default = 87380
net.core.rmem_max = 16777216
失效连接回收:
net.ipv4.tcp_keepalive_time = 120
net.ipv4.tcp_keepalive_intvl = 30
net.ipv4.tcp_keepalive_probes = 3
定义单个共享内存段的最大值:
kernel.shmmax = 429496795
这个参数应该设置的足够大,以便能在一个共享内存段容纳下这个的Innodb缓冲池的大小
kernel.shmmax = xxxxxx
这个值的大小对于64位的linux操作系统,可取的最大值为物理内存值-1byte,建议值大于物理内存的一般,一般取值大于Innodb缓冲池的大小即可
kernel.shmmax = xxxxx
vm.swappiness = 0
这个参数当内存不足时会对性能产生比较明显的影响
free -m
swap 交换分区
当操作系统因为没有足够的内存时就会将一些虚拟内存写到此磁盘的交换分区中,这样就会发生内存交换
增加资源限制 /etc/security/limit.conf
打开文件数量的限制:
1. * soft nofile 65535
2. * hard nofile 65535
加倒limit.conf的文件末尾就行
* 表示对所有用户有效
soft 指明是当前系统生效的设置
hard 表明系统中所能设定的最大值
nofile 表示所限制的资源是打开文件的最大项目
65535 是限制数量
该修改需要重启系统
磁盘调度策略 /sys/block/devname/queue/scheduler
默认为cfq策略
noop 电梯调度策略
deadline 截止时间调度策略
anticipatory 预料i/o调度策略
echo <schedulername > /sys/block/devname/queue/scheduler
如 echo deadline > /sys/block/sda/queue/scheduler
文件系统性能
windows
FAT NTFS
Linux
EXT3 EXT4 XFS 建议使用xfs
ext3/4系统的挂载参数(/etc/fstab)
data = writeback | ordered | journal
noatime, nodiratime
配置:
/dev/sda1/ext4 noatime,nodiratime,data=writeback 1 1