我需要一些帮助才能在 MySql 中永久设置 MAX 连接值。我已经尝试过,但我找不到永久的解决方案。现在,我通过更改命令提示符来使用临时解决方案,如本文所示。
4 回答
由于这个问题在人们搜索解决方案时会出现在搜索结果中,而且现在解决方案已经改变,我觉得有必要发布一个答案。
Ubuntu 15.04+不再/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 配置:
sudo systemctl daemon-reload
非常感谢我将代码插入到 MY.ini 文件中,它解决了问题。
在 [mysqld] 部分下的 c:/xampp/mysql/bin/my.ini 文件中,我插入了以下行
**
最大连接数 = 250
** 稍后重启xampp服务器生效。
如果我们给 set-variable=max_connections=250 Mysql 服务器没有启动。
再次非常感谢您。
您可以在 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 才能生效。
我在使用 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。