MySQL 修改最大链接数

今天使用ide链接线下MySQL报错Can not connect to MySQL server. Too many connections,报错很明确,与MySQL的链接数满了。想一想也是,每起一个服务都会建立MySQL链接池,占用很多的长链接。用ide查看了一下,原来最大链接数才151,看来有必要改大一点了。mysql

上网查了一下,修改方式有两种sql

1.命令行修改服务器

进入mysql后,set GLOBAL max_connections=1024; 便可当即生效,可是博主没有使用这种方式,由于这种方法治标不治本,一点重启mysql,最大链接数又会变回151ide

2.修改配置,而后重启spa

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.orm

以个人英语水准,把上述语句归纳起来就是,max_connections依托于操做系统,Linux系统必要时须要增长open-files-limit。万万没想到啊,修改max_connections居然要修改操做系统最大文件描述符。server

vi /usr/lib/systemd/system/mysqld.service加入文档

LimitNOFILE=50000

重启MySQL

嗯,搞定了~

但愿对你们有所帮助,祝你们天天开心~

相关文章
相关标签/搜索