Я провожу некоторые тесты (на своем сервере разработки), чтобы помочь мне понять, что вызывает постоянно растущий список подключений на моем рабочем сервере. Я предполагаю, что есть определенные страницы, которые не закрывают соединение с помощью mysql_close(). Поэтому я пытаюсь сначала подтвердить, что создает соединения, а затем подтвердить, как убедиться, что они закрыты.
Для этого я создал простой скрипт для создания соединения, а затем mysql_close() для закрытия соединения. К сожалению, мое тестирование приостановлено, потому что я даже не могу подтвердить, что я создаю соединения.
Когда я выполняю следующий код (обратите внимание, что mysql_close()) закомментирован, я ожидаю увидеть новое соединение в моем списке клиентских подключений, и я ожидаю, что оно убьет себя через 20 секунд, так как я установил для wait_timeout значение 20 , Однако, похоже, даже не создается никакого соединения.
<?php
$dblocation = "127.0.0.1";
$dbusername = "blah_dev";
$dbpassword = "test";
$dbname = "blah_dev";
$dbdescription = "";
$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!");
$sql = "select fullname from months";
$result = mysql_query($sql);
if($row = mysql_fetch_array($result)){
echo "<table border=1>";
do{
$month = $row["fullname"];
echo "<tr><td>".$month."</td></tr>";
}while ($row = mysql_fetch_array($result));
echo "</table>";
}
//mysql_close();
?>
Я даже добавил простой оператор выбора, чтобы подтвердить, что я устанавливаю соединение, и я это делаю. Почему это подключение не отображается в моем списке клиентских подключений в MySQL Workbench? Я также использую другой инструмент (диспетчер диагностики MySQL), чтобы показать мне текущие потоки, и он там тоже не отображается.
Что мне здесь не хватает?