mysql_connect返回false但未达连接上限,求故障排查
未达MySQL连接上限却出现连接错误
编辑说明:我不理解为何我的问题被关闭,另一个问题与我的问题完全无关。那个问题是询问为何不应使用mysql_函数,而我根本没问这个。我问的是为何未达连接上限却被拒绝连接。
我同时使用mysql_connect和PDO连接MySQL(正逐步过渡到仅使用PDO,但有近2000条语句需要更新,因此这是一项进行中的工作)。
连接代码如下:
$conn = mysql_connect($dblocation, $dbusername, $dbpassword) or die ("<span style='color:red'>Unable to connect! Press F5 to try again.</span>"); mysql_select_db($dbname, $conn) or die ("Unable to select database!"); try{ $pdo = new PDO("mysql:host=$dblocation;dbname=$dbname", $dbusername, $dbpassword); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); } catch(PDOException $ex){ echo (json_encode(array('outcome' => false, 'message' => 'Unable to connect using PDO'))); }
该方案已正常运行多年,但服务器负载随时间逐渐增加。近两日用户反馈频繁出现连接错误,要么显示Unable to connect! Press F5 to try again.,要么显示Unable to connect using PDO,今日情况愈发严重。
错误主要出现在早高峰和晚高峰时段,这两个时段服务器负载较高。奇怪的是,我远未达到连接上限:连接上限设为2200,但连接峰值不足200,甚至连接数低于100时也会出现错误。


为何未达连接上限却出现连接错误?
内容的提问来源于stack exchange,提问作者Vincent
相关产品推荐
相关产品推荐

