php - max_user_connections 错误,这是什么意思?

标签 php mysql

所以我的网站目前正在爆炸式增长。 在我的 header.php 中(只有登录用户才有)检查是否有 mysql_error。 如果找到,它会破坏 session 并输出:


抱歉,出了点问题


[mysql_错误]


在这种情况下,它输出:


抱歉,出了点问题
用户 duavatar_dba 已经有超过 'max_user_connections' 个事件连接

其他注意事项
有一个Session Variable是在用户登录时创建的,其值为用户在数据库中的id(auto_increment)。当 header.php 试图从 $_SESSION['id'] 中查找数据库中的 ID 时,它(很少)弹出“抱歉,出了点问题”,然后 mysql_error().
输出这个错误的代码是

$fetchuser = "SELECT * FROM `duavatar_db`.`users` WHERE `users`.`id`=".$_SESSION['id'];
$exec = mysql_query($fetchuser, $con);
if(mysql_num_rows($exec) == 0){
session_destroy();
die("Sorry, something went wrong.<hr>".mysql_error());
}

是的,$con 是一个定义变量。 duavatar_dba 是mysql账户用户名。


如果 ID 被交换,或者您登录的帐户刚刚从数据库中手动删除,则通常会发生此错误。
我什么想要我想知道“max_user_connections”是什么,以及如何更改“最大连接数”的数量(如果可能)。

最佳答案

这是一个 MySQL 设置,它限制了单个用户在任何时候可以与数据库建立的连接数。您的 PHP 应用程序通常使用单个用户帐户连接到数据库——例如您在语句中使用的帐户:

mysqli_connect("localhost","THIS_USER","my_password","my_db");

您的流量明显超过了允许的连接数。

使用这些说明增加值:

http://dev.mysql.com/doc/refman/5.7/en/user-resources.html

例如,如果要将最大连接数增加到 20:

ALTER USER 'your_user'@'your_host' WITH MAX_USER_CONNECTIONS 20;

但不要意外减少数量。使用此查询检查当前值:

SELECT * FROM mysql.user;

关于php - max_user_connections 错误,这是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39441988/

相关文章:

php - 如何在PHP中更优雅地解析html?

php - 带有数据库 (mysql) 查询的 WordPress 插件

php - 如何计算 Phalcon 伏特的列数?

MySQL XAMPP 总是打开一个网络命令弹出窗口

php - 过滤 gridview 后的 Yii2 导出

php - 从 MySQL 结果生成的 HTML 表,以使用 PHP 的形式进行处理

mysql - wamp 服务器与 mysql 服务器

mysql - 物化路径按日期+路径排序

php - 为什么使用 PHP 从数据库中读取转义字符,在正则表达式替换期间显示为输出中的普通文本?

mysql - INNODB 大小缩小