今天有两台服务器都出现了Can't create a new thread报错。

【故障处理过程】

故障发生后登录服务器,检查mysql进程正常,但登录mysql报下面错误

ERROR 1135 (HY000): Can't create a new thread (errno 11); if you are not out of available memory, you can consult the manual for a possible OS-dependent bug。

重启mysql服务,执行没响应,kill -9 mysql进程,从errorlog中看到,停服务的命令由于无法创建新的thread导致执行失败

【问题分析】

这个报错不是mysql本身的问题,根本原因是由于操作系统CentOS 6.4 Linux 2.6.32 的max user processe的默认设置1024太小造成,当mysql线程数大于配置值时,就会出现Can't create a new thread报错。

以其中一台服务器为例,操作系统版本是CentOS release 6.4(Linux version 2.6.32)

配置文件/etc/security/limits.d/90-nproc.conf的默认设置soft limit 是1024

这时mysql进程的Soft Limit也是1024

【问题重现】

在测试机器上将Max processes调整为1024,模拟并发1024以上个线程请求,会出现同样的报错

动态修改mysql进程的系统资源限制后,报错消失

echo -n "Max processes=2048:2048" > /proc/`pidof mysqld`/limits

【解决办法】(针对CentOS 6.4 Linux version 2.6.32以上版本)

1、动态修改mysql进程的系统资源限制(不需重启mysql服务即可生效)

echo -n "Max processes=65535:65535" > /proc/`pidof mysqld`/limits

2、修改/etc/security/limits.d/90-nproc.conf配置文件的配置(下次重启mysql服务生效)

3、建议同时修改上面配置中用户打开最大文件数的限制nofile

【原创】MySQL Can't create a new thread报错分析的更多相关文章

  1. mysql中大数据表alter增加字段报错:"1034 Incorrect key file for table 'table_name'; try to repair it"

    mysql中大数据表alter增加字段报错:"1034 Incorrect key file for table 'table_name'; try to repair it" 现 ...

  2. 连接远程MySQL数据库项目启动时,不报错但是卡住不继续启动的,

    连接远程MySQL数据库项目启动时,不报错但是卡住不继续启动的, 2018-03-12 17:08:52.532DEBUG[localhost-startStop-1]o.s.beans.factor ...

  3. mysql 5.7.28 中GROUP BY报错问题 SELECT list is not in GROUP BY clause and contains no

    ----mysql 5.7.28 中GROUP BY报错问题 SELECT list is not in GROUP BY clause and contains no------ 解决方案: sel ...

  4. Mysql in子查询中加limit报错

    Mysql in子查询中加limit报错 select id from aa where id in ( select id from bb limit 10 ); 改写成 SELECT id FRO ...

  5. 使用sqoop从Oracle或mysql抽取数据到HDFS遇到的报错及解决

    一.参考文档: 1.https://www.rittmanmead.com/blog/2014/03/using-sqoop-for-loading-oracle-data-into-hadoop-o ...

  6. mysql小知识点汇总---(时间与时间戳的转换, 修改mysql用户名密码, navicate 导入sql文件报错 1153)

    1. 时间与时间戳的转换 1.1 时间戳转时间 FROM_UNIXTIME(add_time, '%Y-%m-%d') 1.2 时间转时间戳 UNIX_TIMESTAMP('2015-04-29') ...

  7. 解决Mysql搭建成功后执行sql语句报错以及区分大小写问题

    刚搭建完mysql 8.0以后会: 一.表区分大小写, 二.执行正确的sql语句成功且会报:[Err] 1055 - Expression #1 of ORDER BY clause is not i ...

  8. Mysql修改root用户密码 For Mac 报错:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)

    环境 Mysql版本:5.7.12 操作系统:OSX 10.11 安装文件:.dmg文件 MySQL:mysql-5.7.12-osx10.11-x86_64.dmg(注意5.7跟之前的字段有些不同, ...

  9. MySQL or MariaDB 错误解决方法之报错代码1045

    phpMyAdmin登录报错:mysqli_real_connect(): (28000/1045): Access denied for user 'root'@'localhost' (using ...

随机推荐

  1. Gulp 笔记

    Gulp是一款自动化构建工具 用npm安装 npm install -g gulp npm install --save-dev gulp 分别在全局和项目目录里安装. 然后在项目目录里创建gulpf ...

  2. IE盒模型和W3C盒子模型的区别

    其实这个问题到现在真的是没有意义了,因为早在IE6的兼容模式开始就已经弃用了IE盒子模型了,但是现在的各种面试题还是会时常出现这样的上世纪的题目,我觉得其实时纯粹的刁难. 好了,吐槽不多说了,直接上图 ...

  3. vue控制台报错

    1. TypeError: Cannot read property '_withTask' of undefined 这是因为引用找不到导致的,比如: <button @click='aaa' ...

  4. 官方资料&一些好的博客与技术点

    https://technet.microsoft.com/zh-cn/library/hh848794.aspxzh   https://msdn.microsoft.com/en-us/power ...

  5. li分两列显示

    只要控制了li的宽度,利用浮动就能实现<style type="text/css"> .my ul { width: 210px; } .my li { width: ...

  6. H5 Day1 练习

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. 用python处理文本,本地文件系统以及使用数据库的知识基础

    主要是想通过python之流的脚本语言来进行文件系统的遍历,处理文本以及使用简易数据库的操作. 本文基于陈皓的:<程序员技术练级攻略> 一.Python csv 对于电子表格和数据库导出文 ...

  8. 关于z-index这个层级的问题

    z-index它可真是一个神奇的东西,它可以随意安排你的层的叠加问题. 如你想让红色矩形压在蓝色矩形上,正常布局先建立一个红色的再建议一个蓝色的,就可以了. 但如果我相反来建立,那么就得借助z-ind ...

  9. CF232C Doe Graphs

    传送门 Solution:  (不理解时对着图研究一下就清楚啦!!!) sm[i]为|D(i)|  (x,y,n)为x,y在D(n)中的最短路 已知sm[i-1]+1为D(i)的割点 于是x-y的最短 ...

  10. 【Python】Flask系列-URL和视图笔记

    1.学习目标 熟悉Flask相关知识. 熟悉web开发流程. 能独立开发Flask项目. 2.环境配置 Python虚拟环境安装 因为python的框架更新迭代太快了,有时候需要在电脑上存在一个框架的 ...