mysql_ping () c api терпит неудачу

0

соединение с mysql теряется через 8 часов (например, afer wait_timeout varibale times out). Я пытаюсь использовать mysql_ping() для повторного подключения к серверу, но ping дает мне ошибку Mysql server. Я использую sql версию 5.1. поэтому я не использую mysql_options(), чтобы включить флаг reconnect, поскольку mysql_real_connect() устанавливает его в 0. Я явно устанавливаю флаг повторного подключения на 1, как mysql_Conn- > reconnect = 1; после вызова mysql_real_connect(). Но mysqlping не работает. Пересоединения не происходит. Прошу совета. Спасибо заранее

Теги:

1 ответ

2

Вместо того, чтобы пытаться подключить соединение к жизни после его сброса, гораздо лучше периодически его пингуровать примерно в половине времени отключения (4 часа в вашем случае), чтобы поддерживать его.

Если ping не удается, явным образом отключить соединение и снова подключиться.

Кроме того, вы можете добавить что-то вроде этого к вашему /etc/my.cnf:

[mysqld]
wait_timeout=400000

Тайм-аут находится в секундах, поэтому это около четырех с половиной дней, достаточно долго, чтобы поддерживать соединение в течение долгого уик-энда, пока никто не использует вашу систему.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню