mysql 如何统计已用的连接数?

mysql 如何统计已用的连接数?

按照我的问题,我想问一下 mysql 如何计数used connections。是通过浏览器尝试连接到服务器吗?计算机?IP 地址?

昨天,我们客户的服务器收到一条错误消息“无法连接到数据库”。当我们尝试登录 mysql 时,它给出了错误“连接数过多”。我们不得不重新启动 mysqld。这是因为我们添加了一个 cron 作业以在凌晨 2 点运行 PHP 脚本。PHP 脚本的功能是检查表并更新值。函数的开始和结束已正确打开和关闭 DB 连接。

我们希望了解情况,以便制定对策。

答案1

命令行“mysql”在运行时才有效。如果有多个实例正在运行,则每个实例都有效。

SHOW GLOBAL STATUS LIKE 'Max_used_connections';如果与 相同SHOW VARIABLES LIKE 'max_connections';,则表明您已达到极限。

Web 服务器会生成线程(或进程)(运行 PHP、Java 等)来处理多个用户。在某些安装中,Web 服务器的限制大于 MySQL 的max_connections设置。这可能会导致“连接过多”。

我建议降低网络服务器的儿童限制,作为“更好”的设置。

这些信息并不关心连接是“localhost”(套接字)还是 TCP/IP。是的,连接池增加了混乱,而不一定带来任何好处。

相关内容