一个普通ERROR 1135 (HY000)错误引发的血案:
今天接到测试人员反应,测试环境前端应用程序无连接mysql数据库,登录mysql服务器,查看错误日志,发现有如下报错:

点击(此处)折叠或打开
  1. 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

第一反应感觉可能是跟ulimit限制连接数有关,文件描述符不够用。接下来检查配置件 /etc/security/limits.conf 相关结果如下:
点击(此处)折叠或打开
  1. #for root
  2. root soft nofile 65535
  3. root hard nofile 65535
  4. # End of file
  5. mysql soft nproc 65536
  6. mysql hard nproc 65536
  7. mysql soft nofile 65535
  8. mysql hard nofile 65535

配置没有问题,mysql的ulimit限制已经打开。

但是,执行如下命令:

点击(此处)折叠或打开
  1. # sudo -u root bash -c " ulimit -a "
  2. core file size (blocks, -c) 0
  3. data seg size (kbytes, -d) unlimited
  4. scheduling priority (-e) 0
  5. file size (blocks, -f) unlimited
  6. pending signals (-i) 62591
  7. max locked memory (kbytes, -l) 64
  8. max memory size (kbytes, -m) unlimited
  9. open files (-n) 1024
  10. pipe size (512 bytes, -p) 8
  11. POSIX message queues (bytes, -q) 819200
  12. real-time priority (-r) 0
  13. stack size (kbytes, -s) 10240
  14. cpu time (seconds, -t) unlimited
  15. max user processes (-u) 1024
  16. virtual memory (kbytes, -v) unlimited
  17. file locks (-x) unlimited

发现max user processes值仍为1024.

而在Centos5里面,只须在/etc/security/limits.conf添加如下两行:
点击(此处)折叠或打开
  1. root soft nofile 65535
  2. root hard nofile 65535

对应的uilmit  -u 就会是65535.
后来猜想centos6的用户的ulimit限制是不是还有其他的配置文件做相关的限制呢?果不其然,发现在 /etc/security/limits.d/目录下,有一个名为:90-nproc.conf的配置文件,
打开看看什么内容:
[root@fztest ~]# cat /etc/security/limits.d/90-nproc.conf

点击(此处)折叠或打开
  1. # Default limit for number of user's processes to prevent
  2. # accidental fork bombs.
  3. # See rhbz #432903 for reasoning.
  4. * soft nproc 1024


而在配置文件/etc/security/limits.d/90-nproc.conf中的 “* soft nproc 1024”的意思是任何用户的最大max user processes为1024个,也就是说,系统的任何用户均不可以通过ulimit -u来修改 。真的是这样吗?我们来进行如下验证操作:
点击(此处)折叠或打开
  1. [oracle@fztest ~]$ ulimit -u 65535
  2. -bash: ulimit: max user processes: cannot modify limit: Operation not permitted
  3. [root@fztest ~]# ulimit -u 65535
  4. [root@fztest ~]# ulimit -u
  5. 65535

由以上操作,可知事实上这个限制是对除root以外的普通用户进行的限制,root可以通过ulimit -u 65535来进行即时修改,只对当前会话生效。一旦重启服务器,便会失效(重新恢复max user processes  -u 1024)。

接下来,尝试通过修改这个配置文件,来验证max user processes的值是否会改变。
将/etc/security/limits.d/90-nproc.conf中的1024修改为65535后,执行如下命令:
点击(此处)折叠或打开
  1. [root@fztest ~]# sudo -u root bash -c " ulimit -a"
  2. core file size (blocks, -c) 0
  3. data seg size (kbytes, -d) unlimited
  4. scheduling priority (-e) 0
  5. file size (blocks, -f) unlimited
  6. pending signals (-i) 95191
  7. max locked memory (kbytes, -l) 64
  8. max memory size (kbytes, -m) unlimited
  9. open files (-n) 65535
  10. pipe size (512 bytes, -p) 8
  11. POSIX message queues (bytes, -q) 819200
  12. real-time priority (-r) 0
  13. stack size (kbytes, -s) 10240
  14. cpu time (seconds, -t) unlimited
  15. max user processes (-u) 65535
  16. virtual memory (kbytes, -v) unlimited
  17. file locks (-x) unlimited

由此可见,修改生效。如果不想修改/etc/security/limits.d/90-nproc.conf这个文件,也可以将此限制添加到/etc/rc.local文件中,让其开机应用生效即可。
成功修改了root用户的max user processes后,继续使用root用户启动mysqld_safe脚本,稳定运行了一个上午,一切正常。 至此,ERROR 1135 (HY000): Can’t create a new thread (errno 11)这个问题总算告以段落。

 

转载于:https://blog.51cto.com/255361/1054204

一个普通ERROR 1135 (HY000)错误引发的血案:相关推荐

  1. 1135 mysql_Mysql实例mysql中一个普通ERROR 1135 (HY000)错误引发的血案

    <Mysql实例mysql中一个普通ERROR 1135 (HY000)错误引发的血案>要点: 本文介绍了Mysql实例mysql中一个普通ERROR 1135 (HY000)错误引发的血 ...

  2. 1135 mysql_mysql中一个普通ERROR 1135 (HY000)错误引发的血案_MySQL

    今天接到测试人员反应,测试环境前端应用程序无连接mysql数据库,登录mysql服务器,查看错误日志,发现有如下报错: ERROR 1135 (HY000): Can't create a new t ...

  3. 1135 mysql_mysql中一个普通ERROR 1135 (HY000)错误引发的血案

    今天接到测试人员反应,测试环境前端应用程序无连接mysql数据库,登录mysql服务器,查看错误日志,发现有如下报错: ERROR 1135 (HY000): Can't create a new t ...

  4. hy000 mysql_mysql中一个普通ERROR 1135 (HY000)错误引发的血案

    ERROR 1135 (HY000): Can't create a new thread (errno 11);if you are not out of available memory,you ...

  5. mysql服务器失败1396_MYSQL ERROR 1396 (HY000) 错误的解决办法

    1.在mysql 数据库里面想再建立一个用户,可是提示错误? ​在mysql命令行里面,想用"create user"命令建立一个名为"developer",密 ...

  6. mysql hy000 2013_MySQL ERROR 2013 (HY000)错误解决方法

    当通过 TCP/IP 连接 MySQL 远程主机时,出现 ERROR 2013 (HY000): Lost connection to MySQL server at 'reading initial ...

  7. mysql1598_mysql中主从复制中出现ERROR 1598 (HY000)错误

    在做主从复制下,插入数据的时候出现下面的错误提示: 代码如下 复制代码 mysql> insert into test values (",'lzh'); ERROR 1598 (HY ...

  8. Matlab一个错误引发的血案:??? Error using == str2num Requires string or character array input....

    Matlab总遇到一些神奇的问题,让人摸不着头脑.昨天编写程序的时候遇到一个让我十分火大的问题,也是自己的matlab基础不好吧. 先描述一下问题,再GUI界面有个listbox,Tag属性是'lis ...

  9. 在控制台远程连接mysql数据库时,出现ERROR 2049 (HY000)错误

    问题的原因是,你本地的数据库版本过高,而远程的数据库版本低. 解决方法:在连接时加上  --skip-secure-auth 参数就可以了. mysql -h主机 -u用户名 -p密码 --skip- ...

最新文章

  1. 2015第22周六Java反射、泛型、容器简介
  2. fftw库 vs2019_FFTW库在VS 2010中的使用方法
  3. EasyUEFI——简介、下载和安装
  4. apache+php安装配置
  5. 【Python CheckiO 题解】Secret Message
  6. Ngnix的TCP和UDP负载平衡配置
  7. 【转】小屁孩, 懂个啥
  8. AsciidocFX相关
  9. Linux 下java jdk安装
  10. Redis系列(三)-Redis发布订阅及客户端编程
  11. MOSS中删除绑定到List上的Eventhandler
  12. 高德地图纠偏 php,高德地图开发中,缩放后Marker偏移的问题
  13. Android 竖直滚动广告条、上下滚动广告条,View滚动广告条;
  14. 2021年茶艺师(初级)考试资料及茶艺师(初级)考试技巧
  15. Fincy APP评测:安全好用的多功能电子钱包
  16. mac os 更改mac地址
  17. 解决TIM版无法修改个人文件夹位置
  18. 计算机软件技术基础上机心得,计算机软件技术基础上机编程
  19. 有苦有乐的算法 --- 图的深度优先遍历
  20. 小白站QQ资料库网站查询源码

热门文章

  1. textarea选中行删除_如何一键删除表格空行,这个方法才最高级!
  2. 神经网络与机器学习 笔记—改善反向传播的性能试探法
  3. 计算机网络-TCP拥塞控制
  4. 【Groovy】MOP 元对象协议与元编程 ( 方法注入 | 使用 Mixin 混合进行方法注入 )
  5. 【C 语言】文件操作 ( 按照文本行的方式读写文件 | fgets 函数 | fputs 函数 )
  6. 【Java 并发编程】线程锁机制 ( 悲观锁 | 乐观锁 | CAS 三大问题 | ABA 问题 | 循环时间长问题 | 多个共享变量原子性问题 )
  7. 【计算理论】计算理论总结 ( 图灵机设计 ) ★★
  8. 【数据挖掘】关联规则挖掘 Apriori 算法 ( 频繁项集 | 非频繁项集 | 强关联规则 | 弱关联规则 | 发现关联规则 )
  9. 【集合论】关系闭包 ( 关系闭包相关定理 )
  10. Microsoft .NET Pet Shop 4.0 学习之旅(三) - 项目的引用关系2