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

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

Соединение с InterBase с раб.места происходит 100 сек при пустой [IB6.x, InterBase]


Страницы:   1 2 3

duke2 ©   (2003-09-18 07:31:00) 

Уважаемые мастера !
Сервер Celeron-1700, 256 Мб, клиент P-166MMX, 48Mb, сеть -витая пара 10 Мбит,
больше никого в сети нет ! Вирусов нет. InterBase 6.0.1.0
С клиентского рабочего места само соединение с БД происходит 100 сек., после чего все работает нормально.
Процедура соединения:
IBDataBase1.Params.Clear;
IBDataBase1.Params.Add("USER_NAME=SYSDBA");
IBDataBase1.Params.Add("PASSWORD=masterkey");
IBDataBase1.Params.Add("lc_ctype=WIN1251");
IBDataBase1.Connected:=true; //Вот на этом шаге - 100 сек. !!!
IBTable1.Active:=true;

Если от БД отцепиться с рабочего места - IBDataBase1.Connected:=false, а затем снова подцепиться - IBDataBase1.Connected:= true, в одном сеансе работы программы - соединение происходит быстро. Но первоначальное подключение - 100 сек.
Скажите, первоначальное подключение на таком оборудовании и должно быть таким долгим, или можно что-то убыстрить ?

На форме 3 элемента - IBDataBase1, IBTransaction1, IBTable1. В БД - одна таблица, в таблице -5 записей.


Reindeer Moss Eater   (2003-09-18 09:43:00) [21]

Johnmen ©
В факе на ibase.ru описан случай связанный с системой востановления файлов на ME и XP. Файлы *.gdb зарегистрированы в этой системе по умолчанию


stud   (2003-09-18 09:43:00) [22]

вместо К1 лучше указать IP адрес


Asgard   (2003-09-18 09:42:00) [23]

Упс. Дрогнула рука на мыше...


Zacho   (2003-09-18 09:41:00) [24]


> duke2 (18.09.03 09:35) [16]
> DatabaseName=K1:D:\PRIMER\PRIMER.GDB
> Имя сервера - K1

Т.е. ping K1 не тормозит ? А если воспользоваться советом Ilya (18.09.03 09:27) [10] (т.е. в строке подключения указывать не имя сервера, а ip-адрес) то торможение исчезает или нет ? Если да, то явно какая-то кривизна с DNS.

> Johnmen © (18.09.03 09:33) [14]

Ну у меня, например, файла hosts вообще нет, и торможений никаких нет :-)


Asgard   (2003-09-18 09:40:00) [25]


> Вопрос - Должно ли соединение с БД с раб.места на сети
> 10 Мбит при почти пустой БД происходить так долго ?

Ответ отрицательный.
Свойство DatabaseName у тебя, например, равно "myserver:C:\MyProg\mybase.gdb"
Попробуй вместо myserver указать его ip-адрес, т.е.
"192.168.1.1:C:\MyProg\mybase.gdb".
Если будет подключаться быстро, значит, проблемы с обозревателем компьютеров в сети. Надо лечить. Или лучше поставить на "сервер" Win 2000 Server в качестве операционной системы, сделать домен и т.д.


Asgard   (2003-09-18 09:40:00) [26]


> Вопрос - Должно ли соединение с БД с раб.места на сети
> 10 Мбит при почти пустой БД происходить так долго ?

Ответ отрицательный.
Свойство DatabaseName у тебя, например, равно "myserver:C:\MyProg\mybase.gdb"
Попробуй вместо myserver указать его ip-адрес, т.е.
"192.168.1.1:C:\MyProg\mybase.gdb".
Если будет подключаться быстро, значит, проблемы с обозревателем компьютеров в сети. Надо лечить. Или лучше поставить на "сервер" Win 2000 Server в качестве операционной системы, сделать домен и т.д.


Johnmen   (2003-09-18 09:39:00) [27]

>Reindeer Moss Eater ©

Еще варианты, пожалуйста.


duke2   (2003-09-18 09:35:00) [28]

IP адрес и сервера и клиента - статический. Пингуется нормально.
DatabaseName=K1:D:\PRIMER\PRIMER.GDB
Имя сервера - K1


Reindeer Moss Eater   (2003-09-18 09:35:00) [29]

Не обязательно.


Johnmen   (2003-09-18 09:33:00) [30]

Указанное явление связано с неуказанием адреса сервера в hosts. Как верно заметил Ilya (18.09.03 09:27).


Reindeer Moss Eater   (2003-09-18 09:33:00) [31]

Ответ - не должно!


duke2   (2003-09-18 09:31:00) [32]

DataBaseName - указан, и соединение происходит нормально.
С сервера - мгновенно. С рабочего места - тоже соединятся, но ждет при этом 100 сек. А дальше работает нормально. И пересоединяется с рабочего места В ОДНОМ сеансе работы программы - тожен почти мгновенно !
Вопрос - Должно ли соединение с БД с раб.места на сети 10 Мбит при почти пустой БД происходить так долго ?


Zacho   (2003-09-18 09:30:00) [33]


> duke2 (18.09.03 09:22) [7]

Ну так все-же приведи строку подключения ! Т.е. св-во DatabaseName.
Наиболее вероятная причина торможения - именно в DNS, например у тебя в настройках протокола указано несколько DNS серверов, и/или DNS сервер, находящийся где-нибудь в Штатах..
Попробуй сделать ping <имя_сервера> - если будет такое же торможение при определении IP-адреса - дело точно в DNS.


Ilya   (2003-09-18 09:27:00) [34]

Попробуй указать статический IP- адрес


Reindeer Moss Eater   (2003-09-18 09:25:00) [35]

Я имею в виду что ничего похожего
IBDataBase1.Params.Add("SERVER_NAME=KOMPUTER");
в параметрах соединения не указывал,


А чего тогда хочешь?


Reindeer Moss Eater   (2003-09-18 09:24:00) [36]

Specifies the name of the database to associate with this database component.

Delphi syntax:

property DatabaseName: String;

C++ syntax:

__property AnsiString DatabaseName = {read=FDBName, write=SetDatabaseName};

Description

Use DatabaseName to specify the name of the database to use with a database component. For local InterBase databases, this can be a filename.

To connect to an InterBase database on a remote server using TCP/IP the syntax is <server_name>:<filename>.

To connect to an InterBase database on a remote server using NetBEUI, the syntax is: \\<server_name>\<filename>.

To connect to an InterBase database on a remote server using SPX, the syntax is: <server_name>@<filename>.


duke2   (2003-09-18 09:22:00) [37]

Наверное я плохо объяснил.
Конечно, имя сревера - то бишь имя компьютера с InterBase Server указано в свойствах IBDataBase1 (там же указан протокол)
Я имею в виду что ничего похожего
IBDataBase1.Params.Add("SERVER_NAME=KOMPUTER");
в параметрах соединения не указывал, так как не бывает параметра "SERVER_NAME
NT у меня нету. И с удаленного компбютера с базой соединение просходит, тольео на строке
IBDataBase1.Connected:=true;
происходит очень медленно при первом подключении!


Zacho   (2003-09-18 09:13:00) [38]


> duke2 (18.09.03 09:08) [4]
> протокол TCP, других протоколов
> в сети нет

Не факт. Если сервер - NT, то все равно есть NetBEUI

> SERVER NAME в параметрах IBDataBase1 не указан.
> А что, надо указывать ? Какой ?

???
И как же он тогда вообще может подключаться ? Неизвестно к чему ?
P.S. Скорее всего, проблема связана с DNS.


Reindeer Moss Eater   (2003-09-18 09:10:00) [39]

А что, надо указывать ? Какой ?

Какой?! С которым работать хочешь.


duke2   (2003-09-18 09:08:00) [40]

Сервер - удаленный (Remote), протокол TCP, других протоколов в сети нет.
SERVER NAME в параметрах IBDataBase1 не указан.
А что, надо указывать ? Какой ?


Страницы:   1 2 3

Наверх

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