CentOS 7下MySQL5.7.23的服务配置参数测试
CentOS 7默认安装MySQL5.7.23,服务管理发生了变化,从sysvinit(service mysql start)变化为systemd(systemctl start mysqld.service)
最近测试了下MySQL5.7.23的服务管理参数,测试主要涉及Restart ,RestartPreventExitStatus,RestartSec,StartLimitInterval四个服务启动参数。
【服务启动方式比较】
1、CentOS7下MySQL5.7.23默认参数下的服务启动方式
MySQL crash、OOM、kill -9 pid三种情况下mysqld进程被终止,都会马上重新启动,间隔100ms
systemctl stop mysqld@service不会自动重启
2、CentOS6下MySQL5.6.21的服务启动情况
MySQL crash、OOM crash和oom kill的是mysqld进程,由于存在mysqld_safe的守护进程,会自动重启mysqld
对于kill -9的命令,如果只kill -9 mysqld进程,mysqld_safe守护进程会重启mysqld,如果mysqld_safe也被kill掉,那么mysqld就不会被拉起来
service mysql stop 不会自动重启
【在CentOS 7下如何实现kill -9 mysqld后不自动重启】
RestartPreventExitStatus= 中列出的退出码或信号永远不会导致该服务被重启
修改RestartPreventExitStatus=1 SIGKILL,增加kill -9对应的信号SIGKILL
测试kill -9,mysqld进程不会自动重启
测试OOM,mysqld进程也不会自动重启
原因是由于OOM在kill进程时传的也是SIGKILL的信号
【需要关注的服务配置的两个参数】
1、RestartSec设置在重启服务(Restart)前暂停多长时间,默认值是100ms,就是mysqld进程OOM或kill后等待100ms就会马上重启
我们MHA中配置的ping_interval=10,意思是MHA Manager每10秒 ping一次master,尝试3次失败后,进行failover
这个参数需要评估下,是否做设定,比如如果希望发生上面异常,能被MHA检测到,那么最保险的是间隔30秒再重启mysql进程,需要指定RestartSec=30
2、StartLimitInterval
设置单元的启动频率限制。 默认一个单元在10秒内最多允许启动5次。建议修改为StartLimitInterval=0,无限制重启。
- CentOS 7下MySQL5.7.23的服务配置参数测试
- CentOS7下RabbitMQ服务安装配置
- centOS7下的MYSQL安装和配置
- centos7下MySQL的配置
- 总结之:CentOS6.5 DNS服务BIND配置、正反向解析、主从及压力测试(2) 推荐
- Centos7下编译安装配置Nginx+PHP+MySql环境
- 详解CentOS7下安装Mysql和配置mysql
- CentOS 7下MySQL服务启动失败的解决思路
- centos7下配置mysql
- 笔记:centos6 mysql配置测试
- Centos7下VSFTPD服务的安装配置
- CentOS 7下安装与配置MySQL 5.7
- CentOS 7下MySQL服务启动失败的解决思路
- 测试服务搭建之centos7下安装java
- Amoeba For MySQL_测试Amoeba在CentOS6.5下配置
- centos7下mysql5.6.30配置单机多实例主从半同步复制
- 总结之:CentOS6.5 DNS服务BIND配置、正反向解析、主从及压力测试(1)
- CentOS 7下MySQL服务启动失败的解决思路
- Centos7下完美安装并配置mysql5.6
- Centos 7下mysql的安装与配置