Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];

Вниз

Соединение с InterBase с раб.места происходит 100 сек при пустой   Найти похожие ветки 

 
duke2   (2003-09-18 07:31) [0]

Уважаемые мастера !
Сервер 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 записей.


 
Жук   (2003-09-18 08:47) [1]

Как выглядит строка подключения к БД ?


 
duke2   (2003-09-18 09:02) [2]

В каком смысле ? Подключение происходит только из исходного текста -
IBDataBase1.Params.Clear;
IBDataBase1.Params.Add("USER_NAME=SYSDBA");
IBDataBase1.Params.Add("PASSWORD=masterkey");
IBDataBase1.Params.Add("lc_ctype=WIN1251");
IBDataBase1.Connected:=true;
IBTable1.Active:=true;


 
Reindeer Moss Eater   (2003-09-18 09:04) [3]

параметр "SERVER NAME" какой?


 
duke2   (2003-09-18 09:08) [4]

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


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

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

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


 
Zacho   (2003-09-18 09:13) [6]


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

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

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

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


 
duke2   (2003-09-18 09:22) [7]

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


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

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>.


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

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


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


 
Ilya   (2003-09-18 09:27) [10]

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


 
Zacho   (2003-09-18 09:30) [11]


> duke2 (18.09.03 09:22) [7]

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


 
duke2   (2003-09-18 09:31) [12]

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


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

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


 
Johnmen   (2003-09-18 09:33) [14]

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


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

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


 
duke2   (2003-09-18 09:35) [16]

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


 
Johnmen   (2003-09-18 09:39) [17]

>Reindeer Moss Eater ©

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


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


> Вопрос - Должно ли соединение с БД с раб.места на сети
> 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) [19]


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

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


 
Zacho   (2003-09-18 09:41) [20]


> 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:42) [21]

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


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

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


 
stud   (2003-09-18 09:43) [23]

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


 
Johnmen   (2003-09-18 09:44) [24]

>Zacho © (18.09.03 09:41)

У меня тоже. Но я говорил про/для автора. :)


 
duke2   (2003-09-18 09:44) [25]

Думаю, если бы дело было в DNS, то КАЖДОЕ соединение происходило бы долго, а не только ПЕРВОЕ В СЕАНСЕ РАБОТЫ ПРОГРАММЫ.
Кстати сама программа запускается мгновенно, процедкра соединения вынесена в кнопку:
IBDataBase1.Params.Clear;
IBDataBase1.Params.Add("USER_NAME=SYSDBA");
IBDataBase1.Params.Add("PASSWORD=masterkey");
IBDataBase1.Params.Add("lc_ctype=WIN1251");
IBDataBase1.Connected:=true;
IBTable1.Active:=true;

Windows - свежий, две недели как стоит, работает нормально (даже 1C! )
Может быть InterBase - у не неравиться то что на клиентском месте - Windows-95(OSR-2). НЕ МОЖЕТ БЫТЬ !!


 
Johnmen   (2003-09-18 09:46) [26]

>Reindeer Moss Eater © (18.09.03 09:43)

Не понял...Это может приводить к торможению ?


 
Reindeer Moss Eater   (2003-09-18 09:48) [27]

Johnmen ©
Может. Система при этом копирует файл в резервный каталог перед тем как его модифицировать.


 
Zacho   (2003-09-18 09:49) [28]


> duke2 (18.09.03 09:44) [25]

Ну попробуй все-же подключится не по имени, а по адресу. И какая операционка на сервере ? См. Reindeer Moss Eater © (18.09.03 09:43) [22]

> Может быть InterBase - у не неравиться то что на клиентском
> месте - Windows-95(OSR-2).

Не может.


 
Johnmen   (2003-09-18 09:52) [29]

>Reindeer Moss Eater ©

Ну не на 100 секунд же тормозить !!! Тем более, что у автора W95.


 
Reindeer Moss Eater   (2003-09-18 09:52) [30]

У него W95 на клиенте


 
Alexandr   (2003-09-18 09:53) [31]

приведите ОС на сервере и на клиенте, конфигурацию сети.
(домен, одноранговая, DNS, DHCP)
и что именно долго происходит:
- певый коннект к базе вообще
- или первый коннект к базе с одного компьютера
- или первый коннект к базе из одной программы.


 
Michael17   (2003-09-18 09:55) [32]

Ну попробуй все-же подключится не по имени, а по IP-адресу.
Очень все просим.
И еще надо выгрузить всякие антивирусы на сервере, если есть запущенные.


 
Alexandr   (2003-09-18 10:06) [33]

давайте его все хором попросим!


 
duke2   (2003-09-18 10:19) [34]

Извините что долго молчал - пришлось снести Интернет и поставить его заново, чтобы проверить версию про DNS, проверял соединение на другой машине.
Сервер - Win98SE, клиент-Win95OSR2, сеть одноранговая, протокол - только IP с явным указанием адресов 1.1.1.1 и 1.1.1.2, DNS, доменов, DHSP - нет, в сети 2 машины.
100 сек происходит Первый коннект к базе из одной программы. Второй коннект из одной программы - мгновенно.
Попробывал подключиться по IP-адресу:
1.1.1.1:D:\PRIMER\PRIMER.GDB
С сервера соединяется нормально.
При соединении у клиента говорит:
Unablr to complete network rekwest to host "1.1.1.1"
Falied to locate host mashine
хотя K1:D:\PRIMER\PRIMER.GDB - соединяется !
Сеть пингуется нормально.
Значит действительно DNS !, Но в такой простейшей сети где я мог ошибиться и ввести InterBase в такой тупик ??


 
duke2   (2003-09-18 10:20) [35]

Забыл добавить, что антивирусов и прочего мусора ни на сервере ни на клиенте не загружено !


 
VICTOR_   (2003-09-18 10:22) [36]

Попробуй на клиентской машине найти ключ в реестре, удалить его и перезагрузить компьютер
[-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\RemoteComputer\
NameSpace\{D6277990-4C6A-11CF-8D87-00AA0060F5BF}]


 
Reindeer Moss Eater   (2003-09-18 10:25) [37]

Сети у тебя интересная очень.
Для локальных приватных сетей диапазон адресов выбран очень интересный.


 
Zacho   (2003-09-18 10:25) [38]


> duke2 (18.09.03 10:19) [34]
> только IP с явным указанием адресов 1.1.1.1 и 1.1.1.2

Не стоит такие адреса назначать, ох не стоит. Измени на 192.168.1.1 и т.д.

> При соединении у клиента говорит:
> Unablr to complete network rekwest to host "1.1.1.1"
> Falied to locate host mashine

Слишком старая версия winsock на клиенте, обнови.
И еще: имя сервера (K1) в hosts прописано ?


 
VICTOR_   (2003-09-18 10:37) [39]

Поставь маску подсети 255.255.255.0
IP адреса
192.168.0.1
192.168.0.2
Поудаляй все протоколы, если они тебе не нужны, кроме TCP IP


 
Alexandr   (2003-09-18 10:48) [40]

да... тогда hosts надо создать и отредактировать
пример hosts.sam
по IP не проходит из-за win95
а чего такие древние ОС?
На сервере надо по крайней мере winNT4 ws

communicationDiagnostics в interbase прольет свет на решение проблемы.


 
duke2   (2003-09-18 10:52) [41]

Спасибо всем ! Все получилось !
Дело было не в DNS, IP-адресах (1.1.1.1 - вполне катит)
а в хостах !!
Прописал в hosts 1.1.1.1 K1 - сразу стал соединяться мгновенно !!!
Я вообще-то думал что это только для IB-5 нужно прописывать.
Кстати, соединение типа
192.168.1.1:D:\PRIMER\PRIMER.GDB так и не работает, хотя адрес 192.168.1.1 - пингуется нормально...
Еще раз спасибо всем !


 
Alexandr   (2003-09-18 11:04) [42]

в hosts в твоей ситуации всегда полезно писать эту строчку.

соединение 192.168.1.1:D:\PRIMER\PRIMER.GDB так и не работает
потому что win95


 
alex   (2003-09-18 13:33) [43]

Была похожая проблема - на клиенте в настройках TCPIP не был указан или указан, но неправильно, шлюз по умолчанию. Как только прописали - все заработало на-ура.



Страницы: 1 2 вся ветка

Форум: "Базы";
Текущий архив: 2003.10.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.55 MB
Время: 0.008 c
3-27397
axelrodm
2003-09-18 12:01
2003.10.09
Чтение курсора из Хранимой процедуры ORACLE в BDE/ADO


3-27404
Вероника
2003-09-18 07:42
2003.10.09
FireBird даёт ошибку. Неделю назад всё было нормально!


3-27304
alexmc
2003-09-12 09:23
2003.10.09
except для несуществующей таблице


6-27626
Серега
2003-08-11 00:25
2003.10.09
CGI


14-27673
Dark Elf
2003-09-22 13:31
2003.10.09
Открытие Chm-файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский