一、操作系统层面
1.1、关闭大页内存
大页内存是为了满足某些需要快速获取大量内存的程序,但对MySQL、Redis、MongoDB是不需要的:
echo "never" > /sys/kernel/mm/transparent_hugepage/enabled
echo "never" > /sys/kernel/mm/transparent_hugepage/defrag
将两条命令写入到/etc/rc.local永久生效。
1.2、禁用swap
临时关闭swap:
echo 0 > /proc/sys/vm/swappiness
永久禁用:在/etc/sysctl.conf
添加vm.swappiness=0
1.3、IO调度策略
在CentOS6系统中,需要调整IO调度策略:
echo "deadline" > /sys/block/sda/queue/scheduler
在CentOS7系统中,默认值就是“deadline”。
1.4、文件系统
尽量使用ext4或xfs类型的文件系统,避免使用lvm。
二、参数说明
参数 | 说明 |
---|---|
port=3306 | MySQL进程使用的端口。 |
bind_address=0.0.0.0 | MySQL绑定的地址。 |
user=mysql | 指定MySQL使用的用户。 |
basedir=/usr/local/mysql | MySQL主目录。 |
datadir=/usr/local/mysql/data | MySQL数据目录。 |
socket=/usr/local/mysql/mysql.sock | MySQL套接字文件。 |
character_set_server=utf8 | MySQL服务端默认字符集。 |
skip_name_resolve | 跳过域名解析。 |
open_files_limit=65 |