前言

最近发现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

总结

更多相关文章

  1. MySQL系列多表连接查询92及99语法示例详解教程
  2. Linux下MYSQL 5.7 找回root密码的问题(亲测可用)
  3. MySQL 什么时候使用INNER JOIN 或 LEFT JOIN
  4. android中HttpURLConnection调用getResponseCode()时崩溃 解决方
  5. android从服务器下载文件(php+apache+win7+MySql)
  6. Android空引用问题的解决方法——on a null object reference
  7. android读取assets大于1M文件的解决方法
  8. 几个Android小错误解决方法
  9. CheckBox android:paddingLeft 不兼容问题解决方法

随机推荐

  1. android小配置junit测试环境
  2. android Intent API8
  3. 10个android开发必备的开源项目
  4. 代码调用Android应用程序卸载
  5. 这些年正Android - 大纲
  6. 协程中的取消和异常 | 核心概念介绍
  7. 月薪8k到年入60w!Android毕业生开发三年做
  8. Binder框架的一些简单总结(关于自定义服务
  9. Android 设置默认锁屏壁纸接口
  10. android -上传文件到服务器