Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Умирает соединение с сервером


Автор: MoLeX 27.6.2012, 21:30
Добрый вечер.
Обрывается соединение с MySQL (открываю через PDO)
Логика работы следующая:
1. Запрос к БД
2. Update
3. Выполнение действий минимум 10 минут
4. Update
5. Выполнения действий
6. Выход

В итоге MySQL падает и я не успеваю сделать действие 4ре  smile 
Как быть?

Автор: MoLeX 27.6.2012, 21:59
все, отбой тревоги)

Автор: Sanchezzz 27.6.2012, 22:06
если в течение 10 мин  не идут  обращения к БД сам драйвер обрывает соединение
в сорцах PDO по умолчанию 30 сек http://php.net/manual/en/pdo.setattribute.php

Код

long connect_timeout = pdo_attr_lval(driver_options, PDO_ATTR_TIMEOUT, 30 TSRMLS_CC);



это даст постоянный конект к БД 
Код

<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
    PDO::ATTR_PERSISTENT => true
));
?>

если такой фишки не нужно то можно проверять какой флаг состояния подключения к БД
Код

$dbh ->getAttribute(PDO::ATTR_CONNECTION_STATUS)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)