Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Программирование и базы данных (http://forum.oszone.net/forumdisplay.php?f=21)
-   -   [решено] SQL Server 2005 Express - enable remote connection (http://forum.oszone.net/showthread.php?t=285139)

Raistlin 16-07-2014 02:48 2377086

SQL Server 2005 Express - enable remote connection
 
Есть программа "Метролог", требующая для функционирования MS SQL Server 2005 Express. Установил его на виртуальную машину WinXP. В readme к программе сказано, что нужно подключить (attach) поставляемую с ней базу к SQL Server. Нагуглил, что это делается из комстроки с помощью sqlcmd. Но sqlcmd работать отказалась:
Цитата:

HResult 0x2, Level 16, State 1
Named Pipes Provider: Could not open a connection to SQL Server [2].
Sqlcmd: Error: Microsoft SQL Native Client : An error has occurred while establi
shing a connection to the server. When connecting to SQL Server 2005, this failu
re may be caused by the fact that under the default settings SQL Server does not
allow remote connections..
Sqlcmd: Error: Microsoft SQL Native Client : Login timeout expired.
Разрешил удаленные соединения (вместо добавления исключения просто отключил Windows Firewall). Ничего не изменилось - по-прежнему та же ошибка при запуске sqlcmd без параметров. Сама программа выдает, судя по всему, такую же ошибку. Куда копать?

lxa85 16-07-2014 08:20 2377120

Raistlin, подожди, во первых она пишет что SQL Server не поддерживает удаленные подключения, а не операционная система.
Во вторых у MS есть графическая утилита по настройкам и администрированию баз данных.
SQLCMD -- командная строка sql, подходит для написания прямых запросов. Мною успешно применялась в скрипте PowerShell для вытаскивания данных. Работать напрямую с ней конечно хорошо, но в данном случае не эффективно. Убьешь время и нервы.
Цитата:

Цитата Raistlin
Куда копать? »

Не туда! :)
Копай в сторону родных утилит что-то вроде Microsoft® SQL Server® 2008 Management Studio Express. И уже в ней более спокойно смотри св-ва сервера, и почему он блокирует удаленные подключения. (Настройка параметра конфигурации сервера remote access; How to enable remote connections in SQL Server 2008?)

Raistlin 16-07-2014 13:17 2377212

Цитата:

Цитата lxa85
во первых она пишет что SQL Server не поддерживает удаленные подключения, а не операционная система »

Так я и включаю удаленные соединения в SQL Server. В приведенной мною ссылке How to configure SQL Server 2005 to allow remote connections упоминается, что нужно создать исключения для Windows Firewall. Понятно, что при локальной установке сервера это вряд ли критично, но... на всякий случай. Впрочем, не сработало.
Цитата:

Цитата lxa85
Во вторых у MS есть графическая утилита по настройкам и администрированию баз данных. »

Для SQL Server 2005 Express на офсайте не упоминается. Да и не проблема воспользоваться комстрокой; проблема в том, что не работает.
Цитата:

Цитата lxa85
Копай в сторону родных утилит »

Я родной 2005-й утилитой (SQL Server Surface Area Configuration) все и настраивал.

Raistlin 21-07-2014 23:05 2379530

Проблема была не в невозможности разрешить удаленные соединения, а в том, что SQL Server Express по умолчанию создает named instance вместо default instance, а полноценный SQL Server делает наоборот (пруф). При этом sqlcmd, запущенная без параметров, пытается подключиться к несуществующей default instance, отсюда и ошибка. M$, как всегда, по мере сил не дает скучать своим пользователям. И "Метролог" автор явно разрабатывал сидя под полноценным SQL Server'ом (честно купленным :) ), а в readme, естественно, написал про Express, не удосужившись проверить.
Чтобы заставить программу работать, соответственно, нужно или переустановить SQL Server Express, выбрав при установке опцию Default Instance, или проделать следующее (источник):
Цитата:

go to SQL Server configuration Manager, and Enable TCP/IP for that named instance, Right-click and go to properties, and in the IP tab, go to IP All section and make TCP Dynamic Ports blank, and make TCP Port 1433 (which is the default)

lxa85 22-07-2014 08:40 2379590

Raistlin, действительно, кто бы мог подумать.sqlcmd начал работать без доп.параметров. metrolog не запустился, разбираться с ним откровенно лень.

Raistlin 22-07-2014 12:56 2379672

"Метролог" у меня запустился после приаттачивания базы.


Время: 14:26.

Время: 14:26.
© OSzone.net 2001-