mysql5.7
1、临时设置最大链接数为1000,重启mysql后 会变成默认值151.
mysql -uuser -ppassword(命令行登录MySQL)
mysql>show variables like 'max_connections';(查可以看当前的最大连接数)
msyql>set global max_connections=1000;(设置最大连接数为1000,可以再次查看是否设置成功)
mysql>exit(退出)
2、永久性修改最大链接数为1000,需要修改配置文件
linux只要修改MySQL配置文件my.ini 或 my.cnf的参数max_connections,将其改为max_connections=1000,然后重启MySQL即可
ubuntu 需要修改/etc/mysql/mysql.conf.d/mysqld.cnf ,将其改为max_connections=1000,然后重启MySQL即可
3、奇怪的是重启完成之后,数据库中最大链接数变成了214,我当时以为设置写错了,换成了500,发现还是214,在换成200,最大链接数竟然变成了200。说明配置是生效了,还有其他问题。
解决办法
[root@emsc ~]# ulimit -n
65535
打开文件最大的数量,
更改 MySQL 在 Linux 的最大文件描述符限制,编辑 /usr/lib/systemd/system/mysqld.service 文件,在文件最后添加:
ubuntu16.04 下面位于:/lib/systemd/system/mysql.service,可以通过find 命令查找

LimitNOFILE=65535
LimitNPROC=65535
保存后,执行下面命令,使配置生效

$ systemctl daemon-reload
$ systemctl restart mysql.service

实际连接数到 2000 了,解决

mysql> show variables like "max_connections";
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 2000 |
+-----------------+-------+
1 row in set
以后在修改mysql 配置文件最大链接数,重启数据库都没有问题了