Архивировано

Эта тема находится в архиве и закрыта для публикации сообщений.

SmirnoFFx

Как подключиться к SQL 2008 R2 на Win7 по сети

Рекомендованные сообщения

Доброго всем времени суток!

 

Кратко изложу суть проблемы: пишу некий клиент под MSSQL 2008 R2 на C++. Для подключения к серверу SQL использую ADO. На локальной машине под ОС Win7 установлен MSSQL Express 2008 R2.

С подключением к SQL-серверу на локальной машине проблем нет - подключается с CONNECTIONSTRING="Provider=SQLOLEDB;Integrated Security=SSPI;Database=test_db;User ID=ID;Password=PSW;Data Source=SMIRNOFFPC\SQLEXPRESS". Не трудно заметить имя локальной машины - SMIRNOFFPC, сервер - SQLEXPRESS.

Но, если попытаться подключаться к серверу по сети (хоть по IP, хоть по имени машины SMIRNOFFPC) - пишет: "[DBNETLIB][ConnectionOpen (Connect()).]SQL Server не существует или доступ запрещен".

Даже если пробовать подключиться к серверу с помощью SQL Manager 2010 for SQL Server - пишет: "Невозможно получить список баз данных с сервера".

Интересный факт: если на локальной машине попробовать подключиться к SQL серверу с помощью строки "Provider=SQLOLEDB;Integrated Security=SSPI;Database=test_db;User ID=ID;Password=PSW;Data Source=192.168.1.2\SQLEXPRESS", т.е. явно указать IP-адрес машины SMIRNOFFPC, также не подключается.

 

В итоге можно сделать быстрый вывод: невозможно подключиться удаленно из-за особенностей настройки ОС Win7. Как Вы считаете?

Хотелось бы узнать, как в Win7 можно разрешить удаленные подключения к SQL-серверу.

 

З.Ы, пробовал отключать брандмауэр - не помогало.

 

Всем спасибо за помощь, с удовольствием отвечу на Ваши вопросы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Проверь настройки протокола tcp/ip для sql сервера. возможно он отключен или забинден только на 127.0.0.1

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Тут очень трудно сразу сказать причину.

Я предполагаю две вещи:

попытка соединиться через занятый порт (он не успевает освободиться

из-за настроек OC или, например, имеет место неявное соединение через этот порт).

Иногда подобное происходит из-за неверно написанного уровня доступа с неявным соединением и так далее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В настройках типы сетевого размещения какие, "Дом", "Работа", "Общественное место" ?

Менять пробовал (Панель управления, Сеть и Интернет, Центр сети и общего доступа) ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Доброго всем времени суток!

 

Кратко изложу суть проблемы: пишу некий клиент под MSSQL 2008 R2 на C++. Для подключения к серверу SQL использую ADO. На локальной машине под ОС Win7 установлен MSSQL Express 2008 R2.

С подключением к SQL-серверу на локальной машине проблем нет - подключается с CONNECTIONSTRING="Provider=SQLOLEDB;Integrated Security=SSPI;Database=test_db;User ID=ID;Password=PSW;Data Source=SMIRNOFFPC\SQLEXPRESS". Не трудно заметить имя локальной машины - SMIRNOFFPC, сервер - SQLEXPRESS.

Но, если попытаться подключаться к серверу по сети (хоть по IP, хоть по имени машины SMIRNOFFPC) - пишет: "[DBNETLIB][ConnectionOpen (Connect()).]SQL Server не существует или доступ запрещен".

Даже если пробовать подключиться к серверу с помощью SQL Manager 2010 for SQL Server - пишет: "Невозможно получить список баз данных с сервера".

Интересный факт: если на локальной машине попробовать подключиться к SQL серверу с помощью строки "Provider=SQLOLEDB;Integrated Security=SSPI;Database=test_db;User ID=ID;Password=PSW;Data Source=192.168.1.2\SQLEXPRESS", т.е. явно указать IP-адрес машины SMIRNOFFPC, также не подключается.

 

В итоге можно сделать быстрый вывод: невозможно подключиться удаленно из-за особенностей настройки ОС Win7. Как Вы считаете?

Хотелось бы узнать, как в Win7 можно разрешить удаленные подключения к SQL-серверу.

 

З.Ы, пробовал отключать брандмауэр - не помогало.

 

Всем спасибо за помощь, с удовольствием отвечу на Ваши вопросы.

Стоит взглянуть на настройки безопасности sql, возможно там стоит разрешение на доступ только локально

2 стоит взглянуть на настройки брандмауэра, в тестовом режиме может стоит его отключить, но если локально все цепляется, то скорее всего копать стоит скуль

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Пробовал настроить SQL через SQL Server Management Studio.

В итоге:

post-352379-1279185052_thumb.jpg post-352379-1279185060_thumb.jpg post-352379-1279185065_thumb.jpg

 

Вроде открыл TCP\IP, разрешил IP 192.168.1.2 (Active и Enabled), но все-равно не подключается.

Брандмауэр отключал - не помогает.

В настройках типы сетевого размещения какие, "Дом", "Работа", "Общественное место" - стоит "Дом", т.е. все разрешено.

 

Есть какие-нибудь соображения по поводу?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я бы посмотрел для начала на Performance Monitor нужно посмотреть что с пулом соединений творится и нет ли уже коннекта по этому порту.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Вот честно, не помню уже как себя ведет SQL если порт не указан, а под рукой нет ничего для эксперимента. Но как уже сказали выше - проверить SQL слушает 1433 на 192.168.1.2 или нет. Если нет явно указать порт в свойствах.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Вот честно, не помню уже как себя ведет SQL если порт не указан, а под рукой нет ничего для эксперимента. Но как уже сказали выше - проверить SQL слушает 1433 на 192.168.1.2 или нет. Если нет явно указать порт в свойствах.

Указал явно порт 1433 в настройках. Не помогло.

Если подключаться с помощью строки "Provider=SQLOLEDB;Integrated Security=SSPI;Database=test_db;User ID=ID;Password=PSW;Data Source=localhost\SQLEXPRESS", т.е. если вместо имени машины SMIRNOFFPC указать localhost - подключается. Значит проблема кроется в настройках ОС и блокировки пакетов из сети.

 

Если выполнить команду netstat -an, видно, что порта 1433 вообще нигде нет! Это правильно? По-моему он должен быть LISTENING?!

Активные подключения

 

Имя Локальный адрес Внешний адрес Состояние

TCP 0.0.0.0:135 0.0.0.0:0 LISTENING

TCP 0.0.0.0:445 0.0.0.0:0 LISTENING

TCP 0.0.0.0:554 0.0.0.0:0 LISTENING

TCP 0.0.0.0:1110 0.0.0.0:0 LISTENING

TCP 0.0.0.0:2869 0.0.0.0:0 LISTENING

TCP 0.0.0.0:5357 0.0.0.0:0 LISTENING

TCP 0.0.0.0:10243 0.0.0.0:0 LISTENING

TCP 0.0.0.0:11704 0.0.0.0:0 LISTENING

TCP 0.0.0.0:19780 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49152 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49153 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49154 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49155 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49159 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49160 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49271 0.0.0.0:0 LISTENING

TCP 0.0.0.0:49296 0.0.0.0:0 LISTENING

TCP 127.0.0.1:1110 127.0.0.1:49314 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49318 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49320 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49324 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49328 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49330 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49331 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49332 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49333 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49334 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49357 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49358 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49359 ESTABLISHED

TCP 127.0.0.1:1110 127.0.0.1:49363 TIME_WAIT

TCP 127.0.0.1:2869 127.0.0.1:49353 TIME_WAIT

TCP 127.0.0.1:10000 0.0.0.0:0 LISTENING

TCP 127.0.0.1:49190 127.0.0.1:49191 ESTABLISHED

TCP 127.0.0.1:49191 127.0.0.1:49190 ESTABLISHED

TCP 127.0.0.1:49192 127.0.0.1:49193 ESTABLISHED

TCP 127.0.0.1:49193 127.0.0.1:49192 ESTABLISHED

TCP 127.0.0.1:49306 127.0.0.1:1110 TIME_WAIT

TCP 127.0.0.1:49308 127.0.0.1:1110 TIME_WAIT

TCP 127.0.0.1:49310 127.0.0.1:1110 TIME_WAIT

TCP 127.0.0.1:49312 127.0.0.1:1110 TIME_WAIT

TCP 127.0.0.1:49314 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49316 127.0.0.1:1110 TIME_WAIT

TCP 127.0.0.1:49318 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49320 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49324 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49326 127.0.0.1:1110 TIME_WAIT

TCP 127.0.0.1:49328 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49330 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49331 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49332 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49333 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49334 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49357 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49358 127.0.0.1:1110 ESTABLISHED

TCP 127.0.0.1:49359 127.0.0.1:1110 ESTABLISHED

TCP 192.168.1.2:139 0.0.0.0:0 LISTENING

TCP 192.168.1.2:2869 192.168.1.1:2128 TIME_WAIT

TCP 192.168.1.2:2869 192.168.1.1:2129 TIME_WAIT

TCP 192.168.1.2:49307 209.85.135.104:80 TIME_WAIT

TCP 192.168.1.2:49309 209.85.135.105:80 TIME_WAIT

TCP 192.168.1.2:49311 209.85.135.105:80 TIME_WAIT

TCP 192.168.1.2:49313 209.85.135.138:80 TIME_WAIT

TCP 192.168.1.2:49315 209.85.135.105:80 ESTABLISHED

TCP 192.168.1.2:49317 209.85.135.138:80 TIME_WAIT

TCP 192.168.1.2:49319 195.128.121.254:80 ESTABLISHED

TCP 192.168.1.2:49321 195.128.121.254:80 ESTABLISHED

TCP 192.168.1.2:49325 209.85.229.101:80 ESTABLISHED

TCP 192.168.1.2:49327 66.249.92.154:80 TIME_WAIT

TCP 192.168.1.2:49329 195.128.121.245:80 ESTABLISHED

TCP 192.168.1.2:49335 195.128.121.245:80 ESTABLISHED

TCP 192.168.1.2:49336 195.128.121.245:80 ESTABLISHED

TCP 192.168.1.2:49337 195.128.121.245:80 ESTABLISHED

TCP 192.168.1.2:49338 195.128.121.245:80 ESTABLISHED

TCP 192.168.1.2:49339 195.128.121.245:80 ESTABLISHED

TCP 192.168.1.2:49342 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49344 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49346 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49347 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49348 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49349 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49350 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49351 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49356 192.168.1.1:5431 TIME_WAIT

TCP 192.168.1.2:49360 195.128.121.254:80 ESTABLISHED

TCP 192.168.1.2:49361 195.128.121.254:80 ESTABLISHED

TCP 192.168.1.2:49362 195.128.121.254:80 ESTABLISHED

TCP 192.168.56.1:139 0.0.0.0:0 LISTENING

TCP [::]:135 [::]:0 LISTENING

TCP [::]:445 [::]:0 LISTENING

TCP [::]:554 [::]:0 LISTENING

TCP [::]:1110 [::]:0 LISTENING

TCP [::]:2869 [::]:0 LISTENING

TCP [::]:3587 [::]:0 LISTENING

TCP [::]:5357 [::]:0 LISTENING

TCP [::]:10243 [::]:0 LISTENING

TCP [::]:11704 [::]:0 LISTENING

TCP [::]:19780 [::]:0 LISTENING

TCP [::]:49152 [::]:0 LISTENING

TCP [::]:49153 [::]:0 LISTENING

TCP [::]:49154 [::]:0 LISTENING

TCP [::]:49155 [::]:0 LISTENING

TCP [::]:49159 [::]:0 LISTENING

TCP [::]:49160 [::]:0 LISTENING

TCP [::]:49271 [::]:0 LISTENING

TCP [::]:49296 [::]:0 LISTENING

UDP 0.0.0.0:500 *:*

UDP 0.0.0.0:3702 *:*

UDP 0.0.0.0:3702 *:*

UDP 0.0.0.0:3702 *:*

UDP 0.0.0.0:3702 *:*

UDP 0.0.0.0:4500 *:*

UDP 0.0.0.0:5004 *:*

UDP 0.0.0.0:5005 *:*

UDP 0.0.0.0:5355 *:*

UDP 0.0.0.0:11704 *:*

UDP 0.0.0.0:56866 *:*

UDP 0.0.0.0:57944 *:*

UDP 0.0.0.0:58555 *:*

UDP 127.0.0.1:1900 *:*

UDP 127.0.0.1:56865 *:*

UDP 127.0.0.1:62831 *:*

UDP 127.0.0.1:62995 *:*

UDP 192.168.1.2:137 *:*

UDP 192.168.1.2:138 *:*

UDP 192.168.1.2:1900 *:*

UDP 192.168.1.2:1900 *:*

UDP 192.168.1.2:51521 *:*

UDP 192.168.1.2:56863 *:*

UDP 192.168.56.1:137 *:*

UDP 192.168.56.1:138 *:*

UDP 192.168.56.1:1900 *:*

UDP 192.168.56.1:56864 *:*

UDP [::]:500 *:*

UDP [::]:3540 *:*

UDP [::]:3702 *:*

UDP [::]:3702 *:*

UDP [::]:3702 *:*

UDP [::]:3702 *:*

UDP [::]:4500 *:*

UDP [::]:5004 *:*

UDP [::]:5005 *:*

UDP [::]:5355 *:*

UDP [::]:11704 *:*

UDP [::]:56867 *:*

UDP [::]:57945 *:*

UDP [::]:58556 *:*

UDP [::1]:1900 *:*

UDP [::1]:56862 *:*

UDP [fe80::540c:e028:7a67:fb3c%11]:546 *:*

UDP [fe80::540c:e028:7a67:fb3c%11]:1900 *:*

UDP [fe80::540c:e028:7a67:fb3c%11]:56860 *:*

UDP [fe80::c579:b827:6685:fd75%15]:546 *:*

UDP [fe80::c579:b827:6685:fd75%15]:1900 *:*

UDP [fe80::c579:b827:6685:fd75%15]:56861 *:*

 

Telnet тоже не внушает мне доверия по поводу 1433 порта:

Microsoft Windows [Version 6.1.7600]

© Корпорация Майкрософт (Microsoft Corp.), 2009. Все права защищены.

 

C:\Users\SmirnoFF>telnet 192.168.1.2 1433

Подключение к 192.168.1.2...Не удалось открыть подключение к этому узлу, на порт

1433: Сбой подключения

 

C:\Users\SmirnoFF>telnet 192.168.1.2

Подключение к 192.168.1.2...Не удалось открыть подключение к этому узлу, на порт

23: Сбой подключения

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Нужно либо убрать Listen All (2.jpg) или указать порт 1433 для IPAll.

 

И еще забыл: - можно включить Named Pipes - тоже будет работать в рамках одной подсети если не блочаться широковещательные пакеты.

 

p.s. а пробема не в настройках OS. По умолчанию приоритетным протоколом обмена является Shared Memory который работает исключительно в рамках локальной ОС. Даже когда включить TCP на локальной машине обмен всеравно будет работать через память. (локальным считается только 127.0.0.1, а вот 192.168.12.2 - нет)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Если выполнить команду netstat -an, видно, что порта 1433 вообще нигде нет! Это правильно? По-моему он должен быть LISTENING?!

Да, и он, и заодно 1434 должны быть LISTENING.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Да, и он, и заодно 1434 должны быть LISTENING.

1434 - не обязательно. Это SQL Server Browser, который еще нужно запустить (по умолчанию выключен). Для коннекта оный совсем не важен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

В принципе можно, но если он отключен, то возникают различные ньюансы, которые тоже могут вносить свою лепту.

 

"However, if the SQL Server Browser service is not running, the following connections do not work:

* Any component that tries to connect to a named instance without fully specifying all the parameters (such as the TCP/IP port or named pipe).

* Any component that generates or passes server\instance information that could later be used by other components to reconnect.

* Connecting to a named instance without providing the port number or pipe.

* DAC to a named instance or the default instance if not using TCP/IP port 1433.

* The OLAP redirector service.

* Enumerating servers in SQL Server Management Studio, Enterprise Manager, or Query Analyzer."

 

Цитата оттуда: http://msdn.microsoft.com/en-us/library/ms181087.aspx

Переведенная версия тоже есть: http://msdn.microsoft.com/rus/library/ms181087.aspx

 

В частности, соответствует фразе в первом посте: "Даже если пробовать подключиться к серверу с помощью SQL Manager 2010 for SQL Server - пишет: "Невозможно получить список баз данных с сервера"."

 

PS

Кстати, по документации: "По умолчанию служба "SQL Server, браузер" запускается автоматически".

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Нужно либо убрать Listen All (2.jpg) или указать порт 1433 для IPAll.

 

И еще забыл: - можно включить Named Pipes - тоже будет работать в рамках одной подсети если не блочаться широковещательные пакеты.

 

p.s. а пробема не в настройках OS. По умолчанию приоритетным протоколом обмена является Shared Memory который работает исключительно в рамках локальной ОС. Даже когда включить TCP на локальной машине обмен всеравно будет работать через память. (локальным считается только 127.0.0.1, а вот 192.168.12.2 - нет)

 

Попробуем разобраться с этим на следующей неделе (увы, но на вых. меня не будет в городе).

 

 

В принципе можно, но если он отключен, то возникают различные ньюансы, которые тоже могут вносить свою лепту.

 

"However, if the SQL Server Browser service is not running, the following connections do not work:

* Any component that tries to connect to a named instance without fully specifying all the parameters (such as the TCP/IP port or named pipe).

* Any component that generates or passes server\instance information that could later be used by other components to reconnect.

* Connecting to a named instance without providing the port number or pipe.

* DAC to a named instance or the default instance if not using TCP/IP port 1433.

* The OLAP redirector service.

* Enumerating servers in SQL Server Management Studio, Enterprise Manager, or Query Analyzer."

 

Цитата оттуда: http://msdn.microsoft.com/en-us/library/ms181087.aspx

Переведенная версия тоже есть: http://msdn.microsoft.com/rus/library/ms181087.aspx

 

В частности, соответствует фразе в первом посте: "Даже если пробовать подключиться к серверу с помощью SQL Manager 2010 for SQL Server - пишет: "Невозможно получить список баз данных с сервера"."

 

PS

Кстати, по документации: "По умолчанию служба "SQL Server, браузер" запускается автоматически".

 

 

Спасибо за цитаты. Как я понимаю, лучше запустить "SQL Server, браузер".

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В принципе можно, но если он отключен, то возникают различные ньюансы,

Угу, согласен, но подавляющее большинство этих ньюансов неприменимо к экспресс версиям, лично я уверен что в данной ситуации включение браузера ничем не поможет, т.к. tcp и пайпы были впринципе выключены.

PS

Кстати, по документации: "По умолчанию служба "SQL Server, браузер" запускается автоматически".

Ну небуду спорить до соплей :), но из личного опыта знаю что express 2005 при установке включает только shared memory (насчет 2008 не помню уже точно, но помоему поведение такое же). (Ссылко для 2005) M$ само путается в показаниях :)

Данное утверждение справедливо лишь для редакций Standart и Enterprice.

 

 

p.s. вообще в свое время по работе очень часто натыкался на подобный ньюанс в 2005-й линейке, поэтому это было первое предположение. Считается что девелоперу или маленькому приложению незачем лазить на БД сервер по сети. Все должно быть локально.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Спасибо за цитаты. Как я понимаю, лучше запустить "SQL Server, браузер".

Хуже не будет. :)

 

Посмотри, вот еще инструкция по настройке неплохая.

http://www.linglom.com/2009/03/28/enable-r...r-2008-express/

 

PS

Похоже, что концепция поменялась. Там написано что 2008-й по умолчанию отличается от 2005-го:

Now SQL Server 2008 Express is released for a while, it doesn’t allow remote connection on default installation as on SQL Server 2005 Express. So you have to enable it manually.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я тоже почитал :) и даже нашел где взглянуть у себя на настройки экспреса 2008го.

 

как они там предлагают, будет использоваться фича называемая Dynamic Ports - это и хорошо и плохо.

хорошо: порт назначается автоматом, он обязательно будет доступен (всетаки более 60к вариантов)

плохо: без sql browser этот порт не найдется, т.к. именно браузер помимо списка инстансов возвращает порты оных.

 

а вообще разницы в поведении и настройках по умолчанию не заметил (хотя возможно это потому что у меня сейчас что 2008 что 2005й мускули стоят те которые идут в комплекте со студией)

 

Но! сразу предупреждаю: SmirnoFFx, при использовании Dynamic Ports нужно быть уверенным что файрволла нет ибо порт может поменяться на другой как только он будет занят или сброшен в 0.

И при использовании динамических портов обязательно нужен SqlBrowser

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Ура! Все заработало. Спасибо всем, принимавшим участие в дискуссиях!

Включил "SQL Server браузер" в NetworkService и заработали подключения через 192.168.1.2.

Очень помогла подробная инструкция по настройке http://www.linglom.com/2009/03/28/enable-r...r-2008-express/

 

Но!! Заработало опять только локально. Т.е. с другой машины в сети подключиться к SQL серверу не получается. Такая же ошибка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Другая машина через что подключена ? (свич, маршрутизатор) Ограничений со стороны оборудования нет ?

Настройки сети на ней позволяют подключаться ? (адреса, маски, тип расположения "Дом").

Брандмауэр (или сторонний, напр.антивирусный файрвол) тоже не забыть проверить на наличие разрешений соединений.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Другая машина через что подключена ? (свич, маршрутизатор) Ограничений со стороны оборудования нет ?

Настройки сети на ней позволяют подключаться ? (адреса, маски, тип расположения "Дом").

Брандмауэр (или сторонний, напр.антивирусный файрвол) тоже не забыть проверить на наличие разрешений соединений.

 

Другая машина работает на Oracle VM VirtualBox под ОС win7 максимальная. Тип подключения сети: сетевой мост. IP выдает маршрутизатор asus wl-520gu, через который соединены домашние компьютеры для совместного доступа в Интернет (VPN).

Думаю вряд ли это связано с промежуточным оборудованием - маршрутизатором, т.к. все пакеты во внутренней сети (LAN1-LAN4) передаются без ограничений.

Файрвол пробовал отключать, не помогает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Другая машина работает на Oracle VM VirtualBox под ОС win7 максимальная. Тип подключения сети: сетевой мост. IP выдает маршрутизатор asus wl-520gu, через который соединены домашние компьютеры для совместного доступа в Интернет (VPN).

Думаю вряд ли это связано с промежуточным оборудованием - маршрутизатором, т.к. все пакеты во внутренней сети (LAN1-LAN4) передаются без ограничений.

Файрвол пробовал отключать, не помогает.

Необходимо добиться того что бы можно было подклчиться через Telnet с "другой" машины.

я обычно делаю так:

1. смотрю порт который слушает sql

2. пробую подключиться к этому порту

если смог - проблема дров которые подключаются к sql (odbc, jdbc, ado и т.п.)

не смог - проблема в сети (ну это в случае если на локальной машине такой же точно конект по telnet срабатывает)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Необходимо добиться того что бы можно было подклчиться через Telnet с "другой" машины.

я обычно делаю так:

1. смотрю порт который слушает sql

2. пробую подключиться к этому порту

если смог - проблема дров которые подключаются к sql (odbc, jdbc, ado и т.п.)

не смог - проблема в сети (ну это в случае если на локальной машине такой же точно конект по telnet срабатывает)

 

Ммм. Спасибо за совет. Завтра будем пробовать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Да. Убрал Dynamic Ports, поставил 1433. Разрешил в брандмауэре 1433 TCP. Все заработало и на удаленной машине.

Теперь другой вопрос: при попытке подключиться пишет: "Login failed for user 'SmirnoFFPC\Гость'".

Это связано с тем, что я пытаюсь использовать аутентификацию windows?

Хотелось бы создать учетку пользователя в SQL, и при подключении в строке "Provider=SQLOLEDB;Integrated Security=SSPI;Database=test_db;User ID=ID;Password=PSW;Data Source=192.168.1.2\SQLEXPRESS" явно указать логин/пароль.

Можно ли создать учетку пользователя SQL используя MS SQL Server Management Studio?

 

З.Ы, конечно, можно найти ответ на данный вопрос в Интернете, можно использовать средства PHPMyAdmin, но хотелось бы получить ответ, как можно сделать это более универсально, без использования сторонних утилит.

 

Спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Для создания учетки:

1. переключить SQL Server в Mixed mode. т.е. авторизация windows и sql server

2. Добавить пользователя в SQL сервер (в management studio есть отдельный раздел (security))

3. дать этому пользователю нужный доступ на нужные БД

4. пользоваться указывая открытый пароль и понимая всю опасноть с этим связанную

 

p.s. а универсальный способ через CREATE USER и ALTER DATABASE

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

DNeverov, спасибо! Все работает.

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах