Mysql在每个刷新页面上创建新的线程连接

时间:2017-07-22 15:40:49

标签: php mysql multithreading connection database-connection

当我刷新php页面时,mysql创建新的线程连接,并且由于max_user_connection.Limit的限制导致共享主机上的这个问题是30并且我刷新页面30次,mysql停止并显示User already has more than 'max_user_connections' active connections。 我认为我设置正确但无法找到解决方案。

db.php中

$host="localhost";
$user="root";
$pass="";
$db="terind";
mysql_connect($host,$user,$pass);
mysql_select_db($db);
mysql_query("set names 'utf8'");

head.php

require("db.php");

...codes...

end.php

mysql_close();

的index.php

require("head.php");
$check=mysql_fetch_assoc(...);
echo $check['index'];
require("end.php");

如何解决此问题?

1 个答案:

答案 0 :(得分:0)

您可以通过不直接访问数据库来修复它,而是使用某种连接池。这在共享托管环境中可能并不容易。

您可以检查是否可以在例如具有有限数量的工作进程的PHP-FPM模式。您可以要求托管服务提供商将网络服务器工作者的数量限制为允许的连接数量,将连接数量调整为工作人员数量。