MySQL错误简介:连接过多
当您的Web应用程序(网站,博客,论坛等)需求量很大,即有大量用户访问时,这意味着服务器上的消耗增加。 如果上述网络应用程序使用MySQL数据库,并且查询的次数确实很多(由于网络编程错误或许多使用网络的用户),MySQL可能会显示此错误:
mysqli_connect(): (HY000/1040): Too many connections
MySQL:连接过多错误是什么意思?
这意味着进入MySQL的请求太多,超过了它的接受范围,也超过了排队或等待的范围。
怎么解决呢?
很简单,我们必须增加MySQL支持的请求(连接)的最大限制。
我将给您两个选择来解决此问题:
1. 我们编辑文件/etc/mysql/my.cfg:
nano /etc/mysql/my.cfg
在其中,我们将以下内容写在[mysql]:
max_connections = 500 max_user_connections = 500
这会将最大连接数从100(默认值)增加到500。
我们保存并退出,然后重新启动MySQL服务,仅此而已。 此更改是永久性的。
2. 解决此问题的另一种方法是将最大限制更改为相等,但要通过MySQL查询。
让我们首先显示当前限制:
mysql --user="root" --password="PASSWORD" --execute='SHOW VARIABLES LIKE "max_connections";'
这将向我们显示以下内容:
+ ----------------- + ------- + | 变量名| 价值| + ----------------- + ------- + | max_connections | 151 | + ----------------- + ------- +
换句话说,当前限制为151个连接,好吧,通过查询将其提高到500个:
mysql --user="root" --password="PASSWORD" --execute='SET GLOBAL max_connections = 500;'
准备好了!
这样的问题是,当重新启动服务时,此配置将丢失。
要提供此详细信息,您可以制作一个每X次验证一次的bash脚本,甚至将行添加到守护程序的start或restart块中。
但是,为什么我想知道第二个选项? 嗯,这就是我以前说的。 但是一个月前,Ubuntu Server忽略了No.2方法,因此...在极端愚蠢的OS中,我们有第二个选项也能正常工作😉
好的帖子,MySql…他们在FreeBSD中使用很多,….KZKG ^ Gaara?,…如果您发表关于如何在FreeBSD中安装和配置MySql的帖子,例如SSH(安全-shell),SSH(通过Web),SFTP,那将是很好的(SSH文件传输协议),Apache-PHP-MySql,PHP5和PhpSysInfo扩展。
为此,我将不得不安装FreeBSD,我认为我现在没有时间,我只是换了工作,并且承担了许多新的职责🙁
我最近不得不为使用nodejs的项目做类似的事情。 就我而言,它增加到了250,这对我来说已经足够了,现在我还不错。 感谢您的信息
您好,您能帮我输入/etc/mysql/my.cfg吗?
我有一个VPS,但无法进入PUTTY。
问候。
要解决选项1-评论的选项的问题,并在重新启动服务器时保留更改,必须根据版本编辑文件:
////////////////////////////////////////////////// ////////////////////
//在Ubuntu 16.04中更改目录/////////////////////
////////////////////////////////////////////////// ////////////////////
我看到了/etc/mysql/mysql.conf.d/mysqld.cnf
////////////////////////////////////////////////// ////////////////////
//在Ubuntu 15.04中更改目录/////////////////////
////////////////////////////////////////////////// ////////////////////
vi /etc/mysql/mariadb.conf.d/mysqld.cnf
////////////////////////////////////////////////// ////////////////////
//我在Ubuntu旧版本中更改了目录//////////////////////
////////////////////////////////////////////////// ////////////////////
我看到了/etc/mysql/my.cnf
////////////////////////////////////////////////// ////////////////////
//在[mysqld]或[mysql]标记下添加此行//
//然后重启服务器//
////////////////////////////////////////////////// ////////////////////
最大连接数 = 500
零教程随时告诉您如何更改它