我面临一个非常奇怪的问题。
我正在尝试将用户连接到我的mysql 5.5实例,但它一直告诉我用户已经超过了max_user_connections
ERROR 1226 (42000): User 'xpto' has exceeded the 'max_user_connections' resource (current value: 100)
但是,
show processlist
未显示该用户使用的任何连接。我很确定用户根本没有使用任何连接。 如果我将当前值增加到110,例如我可以连接。然后,如果我降低我无法连接。
编辑:全局连接使用率为500,只使用了少数(10/20)。
有任何线索吗?
答案 0 :(得分:1)
服务器已经有太多打开的连接。 MySQL服务器只能在拒绝允许之前处理特定数量的打开连接,并且此限制在服务器的所有用户之间共享。它通常设置得相当高,尽管很容易通过大量连接来有效地使用MySQL服务器。
如果您收到错误消息(代码1226)表示整个MySQL服务器已用完连接插槽 - 这是DoS方案。
复制
- 您的数据库必须具有用户'A',您已使用该用户'A'配置了您的wordpress博客。
- 现在问题是用户'A'已超过
maximum_questions
资源(当前值:40)- 通过域控制面板在数据库中创建新用户“B”,并更新
wp-config.php
文件所在的同一用户名 wordpress安装目录。- 现在你在几分钟内解决了问题。它不会打扰您的wordpress或phpbb中的数据库或帖子。
醇>
答案 1 :(得分:0)
您是否使用MySQL 5,并且您已设置用户的MAX_USER_CONNECTIONS,并且用户最近已断开连接?
来自MySQL docs:
对于MAX_USER_CONNECTIONS限制,如果出现边缘情况 帐户目前已打开允许的最大连接数 对它:连接快速断开连接可能导致 错误(ER_TOO_MANY_USER_CONNECTIONS或ER_USER_LIMIT_REACHED)如果 服务器在连接时尚未完全处理断开连接 发生。当服务器完成断开连接处理时,另一个 将再次允许连接。