MySQl 修改最大连接数详解数据库
今天使用ide连接线下MySQL报错Can not connect to MySQL server. Too many connections,报错很明确,与MySQL的连接数满了。想想也是,每起一个服务都会创建MySQL连接池,占用不少的长连接。用ide查看了一下,原来最大连接数才151,看来有必要改大一点了。
上网查了一下,修改方式有两种
1.命令行修改
进入mysql后,set GLOBAL max_connections=1024; 即可立即生效,但是博主没有使用这种方式,因为这种方法治标不治本,一点重启mysql,最大连接数又会变回151
2.修改配置,然后重启
vi /etc/m.cnf加入max_connections=1024,然后重启mysql即可。
重启后,很遗憾,max_connections变成了214,这就很诡异了。我把max_connections又分别设置成500和213,实际的max_connections分别是214和213。也就是说,在这台服务器上,max_connections最大只能是234,猜测是因为操作系统的限制导致max_connections最大只能为213。博主翻了翻MySQl官方文档(英语不好看文档真是浑身难受),发现以下几句话:
The maximum number of connections MySQL can support depends on the quality of the thread library on a given platform, the amount of RAM available, how much RAM is used for each connection, the workload from each connection, and the desired response time. Increasing open-files-limit may be necessary. Also see Section 2.5, “Installing MySQL on Linux”, for how to raise the operating system limit on how many handles can be used by MySQL.
以我的英语水准,把上述语句概括起来就是,max_connections依托于操作系统,Linux系统必要时需要增加open-files-limit。万万没想到啊,修改max_connections竟然要修改操作系统最大文件描述符。
vi /usr/lib/systemd/system/mysqld.service加入
LimitNOFILE=50000
重启MySQL
嗯,搞定了~
希望对大家有所帮助,祝大家每天开心~
原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/4299.html
mysql相关文章
- Mysql information_schema详解数据库
- 获取MySQL系统当前时间详解数据库
- Linux轻松备份MySQL数据库(linux备份mysql数据库)
- MySQL服务器移除:一个必须要注意的过程(mysql移除服务)
- MySQL:最佳数据库选择(为什么选用mysql)
- MySQL解决商的秘密(mysql求商)
- MySQL函数:简单而强大的功能(mysql函数作用)
- 添加MySQL数据库列的注释(mysql给列加注释)
- 如何快速重置MySQL数据库密码(重置mysql密码)
- MySQL:历史悠久的数据库程序库(mysql历史)
- 使用 Yum 升级 MySQL 数据库服务器(yum升级mysql)
- MySQL遍历表数据:实现快速扫描(mysql遍历表数据)
- 导入MySQL 数据导入:从二进制到可用(mysql二进制数据)
- MySQL开源协议:让世界更美好(mysql开源协议)
- 解决MySQL数据库Dump导入问题(dump导入mysql)
- MySQL装在哪里?(mysql装在哪)
- Mysql触发器同步:优化数据库操作的必要步骤(mysql触发器同步)
- 最新 MySQL 客户端版本解析:提升数据库操作效率(mysql客户端版本)
- 如何解决MySQL官网下载过慢问题?(mysql官网下载太慢)
- MySQL修改编码格式轻松解决数据乱码问题(mysql中修改编码格式)
- MySQL中UTF8编码详解(mysql中_utf8)
- 如何使用C语言连接MySQL数据库(c 下连接mysql)
- CRT导出MySQL文件简单轻松实现数据库迁移(crt导出mysql文件)
- 使用 MySQL,建立最佳 C 端口(c mysql 端口)
- MySQL数据库DDL语句详解(mysql中ddl语句)
- AMH极速连接MySQL,轻松实现数据库管理(amh 连接mysql)
- 如何避免 MySQL 数据库中显示空值(mysql 不显示空值)