СВОБОДОМЫСЛИЕ
/ ИНФ. ТЕХНОЛОГИИ / Разное / Вопрос по PHP/MySQL - проблема Server has gone away
Вопрос по PHP/MySQL - проблема Server has gone away
11/06/11 08:25  © LovinGOD
У меня есть консольный php-скрипт, который постоянно крутится на одной машине в локалке, и пользуется MySQL-сервером с другой. Решил сделать так, чтобы в случае, если MySQL сдох (например, я выключил комп с ним), скрипт реагировал на ошибку "MySQL server has gone away": пытался реконнектиться каждую минуту, пока сервер не появится.

Но проблема в том, что сколько MySQL сервер обратно ни включай, "MySQL server has gone away" случается даже при попытке сделать mysql_connect(), что бредово.

В Инете решения не нашёл, собственно, могу обойтись и без этой фичи, но всё-таки интересно, что за фигня.
ВЫБОРКА И КОММЕНТАРИИ
 выборка (0) | обсуждения (2)
(1) Re: Вопрос по PHP/MySQL - проблема Server has gone away
11/06/11 22:53  © overmind
http://php.net/manual/ru/function.mysql-ping.php



<?php

function database_connect() {
$conn = mysql_connect('localhost', 'username', 'password');
mysql_select_db('database', $conn);

return $conn;
}

$conn = database_connect();

if (!mysql_ping($conn)) {
// the previous connection must be closed (even if it was dropped) to reinitialize correctly
mysql_close($conn);

// reconnect
$conn = database_connect();
}




в php.ini Если используется mysqli модуль

то mysqli.reconnect = On

(2) Re: Вопрос по PHP/MySQL - проблема Server has gone away
12/06/11 06:10  © LovinGOD
Сенкс, попробую... Не додумался, что надо закрывать то, что уже и так отвалилось :)

Ex.time (sec): 0.10964