我们有一个应用程序(Java,Spring Boot,Hikari CP)。环境:Ubuntu + MySQL 5.7.25。一切正常。
现在我们尝试在RedHat(MySQL 5.7.25)上安装它。应用程序正在运行。但是当我们尝试登录并且应用程序正在尝试连接到DB时,它正在获得ERROR 1040:连接太多。之后,即使使用命令行也无法连接到MySQL(它以ERROR 1040响应)。
我不确定连接数量的增加是一个很好的解决方案,因为在Ubuntu中我们使用默认值(151)并且一切正常。
有什么想法吗?
您需要检查mysql正在运行的用户的ulimit。
在mysql中配置max_connections的大小的上限在很大程度上取决于操作系统以及MySQL设置的100,000的限制。
Linux有一个名为max open files的限制,这是“按登录”定义的,表示进程可以打开的最大文件数。默认情况下,大多数情况下为1024,但某些SELinux安装会将其重置为较小的数字。
您可以查看:
mysql$ ulimit -n