mySQL 未读取 max_connections 配置

mySQL 未读取 max_connections 配置

我正在尝试更改在 Ubuntu 16.04 服务器上运行的 mysql 实例的 max_connections 配置。我尝试将此配置放在...

[mysqld]
max_connections = 400

...已在以下文件中:/etc/my.cnf,,,。/etc/mysql/my.cnf/etc/mysql/mysql.conf.d/mysqld.cnf/etc/mysql/conf.d/mysql.cnf

我还添加了以下几行/etc/apparmor.d/usr.sbin.mysqld并重新启动了 apparmor:

/etc/mysql/mysql.conf.d/* rl,
/etc/mysql/conf.d/* rl,

尽管如此,每次我重新启动 mysql 服务时,都会从以下查询中得到值 214:

show global variables like "max_connections";

mysql 版本是mysql Ver 14.14 Distrib 5.7.19, for Linux (x86_64) using EditLine wrapper

我错过了什么?

答案1

在 Ubuntu 16.04 中,MySQL 服务的限制在 Systemd 配置文件中定义。要强制 MySQL 读取 mysqld.cnf 中定义的值,请编辑服务配置:

sudo systemctl edit mysql.service

添加以下行然后保存文件:

[Service]
LimitNOFILE=infinity

重启服务:

sudo systemctl daemon-reload
sudo systemctl restart mysql.service

MySQL 现在应该使用配置文件中定义的值。

相关内容