我需要一些帮助来在MySql中永久设置MAX连接值。我试过,但我找不到永久的解决方案。现在,我通过更改this article中的命令提示符来使用临时解决方案。
答案 0 :(得分:10)
由于当人们搜索解决方案时,问题出现在搜索结果上,现在解决方案已经改变,我认为有必要发布答案。
Ubuntu 15.04+ no longer respects /etc/security/limits.conf
中设置的限制。因此,如果您设置了最大连接但没有看到任何效果,请查看sudo vim /var/log/mysql/error.log
处的日志文件,您将看到Changed limits: max_connections: 214 (requested 5000)
。
<强>解决方案:强>
使用以下命令将mysql的限制从systemd配置文件复制到/etc/systemd
:
sudo cp /lib/systemd/system/mysql.service /etc/systemd/system/
sudo vim /etc/systemd/system/mysql.service
然后将以下行添加到文件的底部:
LimitNOFILE=infinity
LimitMEMLOCK=infinity
您也可以使用有限数而不是无穷大。
现在重新加载systemd config:
sudo systemctl daemon-reload
答案 1 :(得分:4)
非常感谢我将代码插入到MY.ini文件中,它解决了问题。
在[mysqld]部分下的c:/xampp/mysql/bin/my.ini文件中我插入了以下行
**
max_connections = 250
** 稍后重启xampp服务器才能生效。
如果我们给set-variable = max_connections = 250 Mysql服务器没有启动。
再次非常感谢你。
答案 2 :(得分:1)
您可以在my.cnf中设置Mysql Doc
我引用
You can increase this value in main config file (e.g., /etc/my.cnf or /etc/mysql/my.cnf) using this syntax:
[mysqld]
set-variable=max_connections=250
我认为你需要在更改生效后重新启动mysql。
答案 3 :(得分:1)
使用Ubuntu 16.04时遇到了同样的问题。 不得不这样做:
sudo vim /etc/systemd/system/mysql.service
添加了文件底部的行:
LimitNOFILE=infinity
LimitMEMLOCK=infinity
重装上阵的systemd配置:
sudo systemctl daemon-reload
增加了系统可以打开的文件数量:
ulimit -n 4096
像这样编辑my.cnf:
vi /etc/mysql/mysql.conf.d/mysqld.cnf
查找max_connections并将其值更改为20000。
要确保设置永久执行,请重启mysql服务:
sudo service mysql restart
去了phpmyadmin并使用以下方法检查了max_connections全局变量:
SHOW VARIABLES like '%max_connections';
它有效 - 现在当守护进程重新启动时,我拥有与之前相同的max_connections。