改进显示max_user_connections的站点

时间:2011-06-06 15:18:17

标签: php mysql max connection

在最近的一些更改后,网站开始显示max_user_connections错误,这可能表明MySQL数据库的并发连接尝试次数过多。

我注意到原始程序员实现了一个用于管理数据库连接的“DB”类,似乎只在每个页面的页脚中调用了一个close。我怎么能改善这个呢?我应该为每个要创建的请求创建一个db对象,然后在检索到结果后立即关闭吗?

2 个答案:

答案 0 :(得分:2)

我不熟悉PHP,但是尽快关闭DB-Connections总是好的,并且与所使用的编程语言无关。 还尝试尽可能晚地获得新的DB-Connection。

如果你正在进行事务性DML,那么你也应该尽快通过提交来释放锁(但是必要时尽快)。如果交易时间超过必要时间,可能会导致其他交易等待。这些等待事务正在消耗连接,而不是等待。

您的“DB-Class”听起来像是用于处理此类目的的实用程序类。

也看看这个question

答案 1 :(得分:0)

当脚本结束时,Php已经关闭了conn。

您可能希望提高mysql配置文件中的最大通信限制

同样execpt你的脚本需要很长时间你不会通过在查询后关闭conn什么都不做