![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Соединение с InterBase с раб.места происходит 100 сек при пустой [IB6.x, InterBase]
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 не указан.
А что, надо указывать ? Какой ?