Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

MySQL при удаленном доступе [D7, XP]


mefodiy ©   (2010-01-12 14:10:00) 

Есть программа с базой данных на MySQL 5, установленной на сервере 2003. Для доступа к базе данных использую ADO и ODBC. В офисе все работает нормально. Трафик между клиентской машиной и сервером минимальный. Как я понимаю, запрос обрабатывается на сервере и клиенту приходит только результат. Когда я использую программу дома (подключаюсь к серверу через VPN), то начинает страшно тормозить. Засекаю трафик и создается впечатление, что вся база (примерно 8 Мб) скачивается на клиентскую машину, хотя результат запроса - всего несколько строк. Причем это происходит при каждом запросе. Поскольку опыта в такого рода подключениях нет прошу посоветовать, где и какими настройками решить проблему.
P.S. Попытка изменить «Cursor location» ADO Connection с clUserClient на clUserServer ничего не изменила.


app   (2010-01-25 14:34:00) [1]

> mefodiy  (25.01.2010 14:20:11)  [11]

С поиском в Прочее, здесь же только программирование.


mefodiy   (2010-01-25 14:20:00) [2]

В интернете вычитал, что вместо ODBC лучше использовать MySQL OLE DB Provider (в Connection String он прописывается как Provider=MySQLProv).  Но никак не могу его найти. Кто-нибудь может подсказать, где его искать?


Медвежонок Пятачок   (2010-01-12 16:37:00) [3]

копать надо в сторону выполнения этого же запроса из под чего-нибудь достоверно прямого. Например в SQLyog.
Затем сравнить время отклика там и здесь.


mefodiy   (2010-01-12 16:29:00) [4]

В "ODBC Data Source Configuration" есть дополнительные опции (Flag1,Flag2,Flag3,Debug,SSL Setting). Может быть надо копать там?


mefodiy   (2010-01-12 16:26:00) [5]


> VPN - трафик шифруется наверняка круто.

Дома клиент "Navision" работает вполне нормально.


turbouser   (2010-01-12 16:22:00) [6]


> mefodiy   (12.01.10 15:49) [5]

VPN - трафик шифруется наверняка круто.


Медвежонок Пятачок   (2010-01-12 15:51:00) [7]

подозреваешь, что программа почувствовала что она не в офисе, а дома и начала жрать трафик?


mefodiy   (2010-01-12 15:49:00) [8]

Запросы без "select *", но сложные, с использованием LEFT JOIN и суммированием полей. Фильтрация производится с использованием оператора WHERE. ORDER BY использую только по существующим индексам.
TDBGridEh сортировки не делает.
Но опять же повторюсь: в офисе эти же запросы выполняются почти мгновенно используют трафик всего в несколько Кб (проверяю по Local Area Connection Status).


sniknik   (2010-01-12 15:13:00) [9]

> с последующей фильтрацией до "всего несколько строк"?
+
а TDBGridEh случаем не делает сортировки пере-запросами с изменением order by?


Sergey13   (2010-01-12 15:09:00) [10]

> [2] mefodiy   (12.01.10 15:01)

А в TADOQuery (кстати лучеш бы АДОДатаСет?) случаем не select * from table с последующей фильтрацией до "всего несколько строк"?


mefodiy   (2010-01-12 15:01:00) [11]

Использую TADOConnection-TADOQuery-TDataSource-TDBGridEh


Медвежонок Пятачок   (2010-01-12 14:55:00) [12]

и создается впечатление, что вся база (примерно 8 Мб) скачивается на клиентскую машину,

TADOTable небось?


Наверх

Титульная страница Поиск, карта сайта Написать письмо