MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Ответить
Аватара пользователя
Raistlin

MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Сообщение Raistlin »

Есть программа "Метролог", требующая для функционирования 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

Re: MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Сообщение lxa85 »

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

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

SQLCMD -- командная строка sql, подходит для написания прямых запросов. Мною успешно применялась в скрипте PowerShell для вытаскивания данных. Работать напрямую с ней конечно хорошо, но в данном случае не эффективно. Убьешь время и нервы.


Цитата Raistlin:



Куда копать?
MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection




Не туда! Изображение

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

Re: MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Сообщение Raistlin »

Цитата lxa85:



во первых она пишет что SQL Server не поддерживает удаленные подключения, а не операционная система
MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection




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


Цитата lxa85:



Во вторых у MS есть графическая утилита по настройкам и администрированию баз данных.
MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection




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


Цитата lxa85:



Копай в сторону родных утилит
MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection




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

Re: MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Сообщение Raistlin »

Проблема была не в невозможности разрешить удаленные соединения, а в том, что 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

Re: MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Сообщение lxa85 »

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

Re: MSFT SQL Server - [решено] SQL Server 2005 Express - enable remote connection

Сообщение Raistlin »

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

Вернуться в «Программирование и базы данных»