前言
最近发现CentOS 7下升级MySQL5.7.23的一个坑,以前面升级到MySQL 5.7.23的一个集群为例
在我们环境下打开文件描述符个数的参数open_files_limit在MySQL 5.6.21下都统一配置为65535,而CentOS 7系统下安装MySQL5.7.23的open_files_limit参数的默认值为5000
否则像分区表数量较多的集群,打开的文件个数过大时,数据库就会报错。
原因如下:
1、CentOS 7安装MySQL5.7.23,服务管理发生了变化,从sysvinit(service mysql start)变化为systemd(systemctl start mysqld.service)
2、CentOS 7下Limit的配置由下面配置文件来决定
全局设置:/etc/systemd/system.conf(如DefaultLimitNOFILE=65535)
服务设置:[Service]默认值为5000,应该将LimitNOFILE修改为65535
【测试】
1、全局配置文件/etc/systemd/system.conf
2、service配置文件/usr/lib/systemd/system/mysqld.service
3、mysql配置文件/etc/my.cnf
【结论】
1、当以systemd管理mysql服务时,在下面3个配置文件中同时制定open_files_limit参数时,最终会以service配置文件为准
2、当service相关配置值注释掉时,会以全局配置文件为准
【解决方案】
1、单台修复方法,按下面步骤
#修改配置 vim /usr/lib/systemd/system/mysqld.service #重载 systemctl daemon-reload #重启服务生效 systemctl restart mysqld@replica01.service
2、安装包修复方法,修改下面两个源文件,将5000增加到65535,重新打包发布,这样新版本默认会保持与MySQL5.6.21相同的配置
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对的支持。
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。