我将 PHP 与 MYSQL 数据库结合使用,因为它们都是开源且易于使用的。
当我依次执行数百万行的插入和/或更新时出现问题
在执行此操作时我得到了 MYSQL 错误:
'max_user_connections' active connections
这是解决这个问题的最佳方法。
除了 PHP,我不想使用其他数据库或语言。
connect_db();
$query = "insert into table(mobno,status,description,date,send_deltime,sms_id,msg,send_type) values('".$to."','".$status."','".$report."','','".$timewsha1."','".$smsID."','','".$type."')";
$result = mysql_query($query) or ("Query failed : " . mysql_error());
此查询将执行数千次。
然后服务器给出连接错误。
最佳答案
首先,尝试从您的托管服务器管理员那里了解 MySQL 数据库可用的最大连续事件连接数。这是要了解的最基本和最主要的信息。
如果您的页面在适当的时间内加载并在页面加载后释放连接,那应该没问题。当您的脚本需要很长时间从数据库检索信息或维护连接时,就会出现此问题。
由于您正在执行数百万行的 INSERT 和/或 UPDATE 操作,因此您可能会遇到一些问题。
此外,如果您无法关闭脚本中的连接,则可能有人会加载页面,而不是在加载页面时关闭连接,而是保持打开状态。然后没有其他人可以使用该连接。 因此请确保在所有 MySQL/SQL 查询执行结束时,数据库连接已关闭。另外请确保您的服务器提供超过250个连接,因为一般几乎所有服务器都提供100个连接。
还要确保您没有使用持久连接(使用内置函数“mysql_pconnect()
”时可用),因为这会锁定用户直到连接建立手动关闭。
希望对您有所帮助。
关于php - 解决mysql最大用户连接错误的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4573338/