Страница 1 из 1
					
				Mysql timeout?
				Добавлено: 11 Март 2011, 15:23
				 Tuko_G
				Здравствуйте 
Clarion 6.3 , DB - Mysql
БД  Mysql находиться в другом городе. 
откриваю клиентскую программу все работает нармально, если нет активности в течении несколько минут то после этого теряется связ с сервером.
как лечить?  ( может быть какое нибуть ODBC настроики нужни ) 
спасибо заранее
			 
			
					
				Re: Mysql timeout?
				Добавлено: 11 Март 2011, 17:20
				 Дед Пахом
				Tuko_G писал(а):БД  Mysql находиться в другом городе. 
откриваю клиентскую программу все работает нармально, если нет активности в течении несколько минут то после этого теряется связ с сервером.
как лечить?  ( может быть какое нибуть ODBC настроики нужни )
Я занимался этим немного и выяснил, что в MySql есть флажок wait_timeout, определяющий время (в секундах) до закрытия соединения (если нет активности). То есть в ini-файле надо написать что-то вроде wait_timeout=60 для разрыва соединения после одной минуты простоя. По умолчанию равно 28800, то есть 8 часов, так что если у вас соединение рвётся очень быстро, значит, в настройках сервера явно указано маленькое значение wait_timeout.
Вот тут можно почитать: 
http://dev.mysql.com/doc/refman/5.1/en/ ... it_timeout 
			 
			
					
				Re: Mysql timeout?
				Добавлено: 14 Март 2011, 13:02
				 Алексей- Софт-Центр
				Добрый день!
То есть в ini-файле надо написать что-то вроде wait_timeout=60 для разрыва соединения после одной минуты простоя
   Не всегда есть доступ к настройкам MySql.
   Я делаю следующим образом:
   В свойствах окна устанавливаю значение таймера 6000.
  В embeds для таймера вставляю текст типа:
     Clarion1{prop:sql}='call orders.SelPri();'
     mmm=format(clock(),@T1)
      display
  На экране окна висит время (mmm).
  Пользователи знают (по своему опыту), что если окно без "часиков", то это может привести к отключению от сервера.
  Хранимая процедура - практически ничего не делает.
   Это можно сделать для всех окон, но я делаю только для тех, отключение от которых может привести к сбою работы программы.
Алексей