|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.10.2015, 11:53 | #1 |
Пользователь
Регистрация: 09.12.2011
Сообщений: 36
|
Теряется связь с базой
Добрый день. Возникла проблемма. Есть база данных Mysql. Моя программа по сети к ней подключается и что то делает. Язык С#. Вот примерная реализация:
Код:
Проблемма в следующем. Если подключение идет с компа на котором база, все замечательно работает. А если же по сети с другого компьтера string Connect = "Database=test;Data Source=192.168.0.2;User Id=root;Password=12345678"; - то первый раз цыкл отрабатывает а потом на строке MyDataReader = myCommand.ExecuteReader(); выдает ошибку MySqlException не обработано Fatal error encountered during comand execution. Хотя, если убрать System.Threading.Thread.Sleep(30000 0); то и по сети все работает замечательно. Почему за 5 мин сна теряется соединение и как это исправаить? Уважаемые форумчане, скажите пожалуйста что я упустил и как мне настроить правильную работу с базой с других компьютеров по сети? Заранее спасибо. |
20.10.2015, 11:59 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Ну в конфиге сервера БД есть параметры таймаута, и вроде при подключении тоже можно задать.
Но мне кажется лучше просто создать новый MySqlConnection, а не держать его все время.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
20.10.2015, 12:16 | #3 |
Пользователь
Регистрация: 09.12.2011
Сообщений: 36
|
А как тогда правильно поддерживать соединение? К примеру если скрипт будет долго работать и нужно периодически получать данные с базы. Каждый раз подключаться ведь не правильно.
|
20.10.2015, 13:16 | #4 | |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
Цитата:
I'm learning to live...
|
|
20.10.2015, 14:04 | #5 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
С чего вы взяли что неправильно?
Если надо делать запрос раз в 5 минут, то просто создавайте/уничтожайте (с помощью using) новый SqlConnection каждый раз. Если запросы очень частые (например несколько раз в секунду), то можно пул соединений использовать (или он даже есть по умолчанию в ADO.NET?). Ну это конечно больше имеет смысл например если запросы делаются из разных потоков и один и тот же Connection использовать нельзя.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ADOConnection связь с базой | betirsolt | БД в Delphi | 16 | 26.05.2013 22:00 |
связь делфи с базой данных access | q123ser87 | Помощь студентам | 1 | 19.05.2012 15:28 |
Управление базой данных,связь Word и Excel | doublek | Помощь студентам | 0 | 07.12.2011 23:40 |
теряется жосткий диск. | podujanin | Помощь студентам | 18 | 03.06.2010 22:12 |
БД в делфи, связь с базой Access | -BlindGuardian- | Помощь студентам | 4 | 27.01.2010 03:00 |