Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 подключение к серверу через ODBC  [new]
shnurku
Member

Откуда:
Сообщений: 10
Всем привет!
Есть сервер с SQL Server 2008. Тестирую подключение через ODBC с разных ноутбуков(ноутбуки одинаковые, на все залит одинаковый образ WinXP SP3). На некоторых ноутбуках подключение проходит, на некоторых нет. Подключаю одним и тем же кабелем с одного свитча.
Порт 1433 открыт. Ограничений на подключение только одной клиентской машины нет.
Идеи закончились. По-прежнему вижу:
Картинка с другого сайта.
16 дек 13, 15:44    [15299587]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
Glory
Member

Откуда:
Сообщений: 104760
http://msdn.microsoft.com/en-us/library/ms345318(v=sql.105)
16 дек 13, 15:44    [15299596]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
shnurku
Member

Откуда:
Сообщений: 10
так и конфигурировали. я же могу использовать порт 1433 для named instance, отличной от дефолтовой?
16 дек 13, 17:41    [15300464]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
Glory
Member

Откуда:
Сообщений: 104760
shnurku
так и конфигурировали.

А как проверяли то результаты конфигурации ?
16 дек 13, 17:42    [15300468]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
Maternus
Member

Откуда: Frankfurt am Main
Сообщений: 114
shnurku
так и конфигурировали. я же могу использовать порт 1433 для named instance, отличной от дефолтовой?

... - я так не думаю.
Если используете named instances: оставте все default, включите на сервере [SQL Server Browser] и откройте udp порт 1434.

Удачи
16 дек 13, 20:31    [15301312]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
shnurku
Member

Откуда:
Сообщений: 10
Получилось следующее:

Когда в connection string писали [имя сервера]\[named instance] на некоторых компьютерах удавалось подключиться по odbc.
если в командной строке выполняли telnet [имя сервера]\[named instance] то выходил Connect failed на всех компьютерах
если в командной строке выполняли telnet [имя сервера]\[named instance] 1433 то выходил Connect failed на всех компьютерах

Когда в connection string писали [имя сервера] подключиться по odbc не получалось нигде
если в командной строке выполняли telnet [имя сервера] то выходил Connect failed на всех компьютерах
если в командной строке выполняли telnet [имя сервера] 1433 то подключение проходило

В итоге в connection string стали писать [имя сервера],1433 и на всех компьютерах стало без проблем подключаться по odbc


Т.е. если инстанс всего один и не дефолтовый, то его не надо указывать при подключении, а вот порт обязательно.
17 дек 13, 10:23    [15302982]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
Glory
Member

Откуда:
Сообщений: 104760
shnurku
Когда в connection string писали [имя сервера]\[named instance] на некоторых компьютерах удавалось подключиться по odbc.
если в командной строке выполняли telnet [имя сервера]\[named instance] то выходил Connect failed на всех компьютерах
если в командной строке выполняли telnet [имя сервера]\[named instance] 1433 то выходил Connect failed на всех компьютерах

Потому что telnet хочет имя хоста и номер порта
telnet /?

telnet [-a][-e escape char][-f log file][-l user][-t term][host [port]]
-a Attempt automatic logon. Same as -l option except uses
the currently logged on user's name.
-e Escape character to enter telnet client prompt.
-f File name for client side logging
-l Specifies the user name to log in with on the remote system.
Requires that the remote system support the TELNET ENVIRON option.
-t Specifies terminal type.
Supported term types are vt100, vt52, ansi and vtnt only.
host Specifies the hostname or IP address of the remote computer
to connect to.
port Specifies a port number or service name.
17 дек 13, 10:29    [15303039]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
shnurku
Member

Откуда:
Сообщений: 10
ну собственно моя проблема разрешилась.
но мне до сих пор не понятно, почему когда в connection string писали [имя сервера]\[named instance] он не откликался(хоть порт 1433 был для него прописан)
17 дек 13, 10:49    [15303142]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
Glory
Member

Откуда:
Сообщений: 104760
shnurku
о мне до сих пор не понятно, почему когда в connection string писали [имя сервера]\[named instance] он не откликался(хоть порт 1433 был для него прописан)

Потому что коннект к именованному экземпляру не подразумевает автоматическое использование дефолтного порта.

Для подключения к именованному экземпляру без указания порта необходимо, чтобы на сервере была запущена служба SQL Browser и открыт порт 1434 для UDP
17 дек 13, 10:53    [15303174]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
shnurku
Member

Откуда:
Сообщений: 10
Glory

Потому что коннект к именованному экземпляру не подразумевает автоматическое использование дефолтного порта.
[/quot]
да, это я знаю, поэтому прописал порт 1433 для именованного экземпляра, но ничего не работало.

Glory
Для подключения к именованному экземпляру без указания порта необходимо, чтобы на сервере была запущена служба SQL Browser и открыт порт 1434 для UDP

это все было сделано
17 дек 13, 11:21    [15303387]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
Glory
Member

Откуда:
Сообщений: 104760
shnurku
да, это я знаю, поэтому прописал порт 1433 для именованного экземпляра, но ничего не работало.

Еще раз
Строка подключения клиента (не настройки сервера) к именнованному экземпляру (не к дефолтному) НЕ подставляет автоматически дефолтный порт

shnurku
это все было сделано

Значит не так или не все было сделано
17 дек 13, 11:25    [15303409]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
o-o
Guest
Glory
shnurku
да, это я знаю, поэтому прописал порт 1433 для именованного экземпляра, но ничего не работало.

Еще раз
Строка подключения клиента (не настройки сервера) к именнованному экземпляру (не к дефолтному) НЕ подставляет автоматически дефолтный порт

shnurku
это все было сделано

Значит не так или не все было сделано


чтобы попасть на именованный экземпляр, сидящий на дефолтном 1433-ем порту,
НЕ НАДО указывать имя экземпляра.
т.е. строка подключения должна быть как для дефолтного
17 дек 13, 12:40    [15303964]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
shnurku
Member

Откуда:
Сообщений: 10
o-o
чтобы попасть на именованный экземпляр, сидящий на дефолтном 1433-ем порту,
НЕ НАДО указывать имя экземпляра.
т.е. строка подключения должна быть как для дефолтного


в таком случае по ODBC сервер не откликался, только когда написал [имя сервера],1433 все заработало
17 дек 13, 15:58    [15305853]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
o-o
Guest
shnurku
o-o
чтобы попасть на именованный экземпляр, сидящий на дефолтном 1433-ем порту,
НЕ НАДО указывать имя экземпляра.
т.е. строка подключения должна быть как для дефолтного


в таком случае по ODBC сервер не откликался, только когда написал [имя сервера],1433 все заработало


а у меня откликается.
спецом попробовали с компа соседа, через ODBC,
усадив один из моих именованных на 1433.
кроме имени компа ничего не указывалось.
и тест проходит, и из Аксесса это ODBC заюзали, все отлично пашет
17 дек 13, 18:01    [15306843]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
o-o
Guest
а сейчас, поменявши ему порт обратно, смотрю ошибку ODBC,
чтоб с Вашей картинкой сравнить.

сперва у клиента в протоколах стоял порядок: shared memory, tcp/ip, named pipes,
тогда -- первая картинка.
а если порядок: shared memory, named pipes, tcp/ip,
то вторая.

вывод: юзайте SQL Server Native Client

К сообщению приложен файл. Размер - 126Kb
17 дек 13, 18:21    [15306925]     Ответить | Цитировать Сообщить модератору
 Re: подключение к серверу через ODBC  [new]
o-o
Guest
для SQL Server Driver имеется кнопочка Client Configuration...
протокол надо выбирать TCP\IP,
галку снять с Dynamically determine port и проставить 1433.

откуда выплыло DBNETLIB, не знаю, но если усадить именованный на 1433,
и пытаться определять порт динамически, все равно не вылезет Ваша ошибка,
а вылезет как у меня на первой картинке.
ну а на второй то, что у меня сработало для именованного на 1433:

К сообщению приложен файл. Размер - 135Kb
17 дек 13, 18:39    [15306988]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить