SQL Server Express 2005 установить порт прослушивания tcp с помощью командного инструмента - PullRequest
0 голосов
/ 06 марта 2010

Я выполняю автоматическую установку для SQL Server Express 2005 с помощью следующей команды

SECURITYMODE=SQL DISABLENETWORKPROTOCOLS=0 SAPWD="****" ADDLOCAL=SQL_Engine,SQL_Data_Files,SQL_Replication,Client_Components,Connectivity,SDK

Мне нужно знать, есть ли параметр или утилита командной строки для настройки службы для прослушивания порта 7005 (см.картинка)

http://www.databasejournal.com/img/2007/01/mak_CLT_image002.jpg

  • Также мне нужно создать псевдоним с помощью командной строки

Спасибо

Ответы [ 2 ]

1 голос
/ 16 сентября 2010

Я сейчас пытаюсь возиться с этим, вот что я нашел:

  1. Чтобы сервер Sql вообще слушал TCP, вам необходимо настроить его для этого. Вы можете использовать sac.exe для загрузки конфигурации из файла. Перейдите на работающий сервер sql, настроенный с включенным протоколом TCP / IP (и все остальное), и запустите «sac.exe out settings.txt». Теперь на компьютере, на котором вы хотите включить tcp, запустите «sac.exe в settings.txt», а затем перезапустите службу. sac.exe находится в каталоге «% programfiles% \ Microsoft SQL Server \ 90 \ Shared»

  2. Для настройки на конкретный порт вам необходимо отредактировать значения реестра. Это покажет вам ключи для редактирования http://support.microsoft.com/kb/823938, однако для написания сценария вам нужно будет использовать команду «REG ADD» в файле .bat и присвоить соответствующее значение соответствующему ключу. Для меня это HKLM \ Microsoft SQL Server \ MSSQL.1 \ MSSQLServer \ SuperSocketNetLib \ Tcp \ IPAll \ TcpPort и установите для него номер порта (по умолчанию для sql - 1433), а затем установите HKLM \ Microsoft SQL Server \ MSSQL.1 \ MSSQLServer \ SuperSocketNetLib \ Tcp \ IPAll \ TcpDynamicPorts в пустой.

  3. Перезапустите агент SQL Server (Net Stop "Sql Server (SQLEXPRESS)" Net start "Sql Server (SQLEXPRESS)" на моем компьютере)

Надеюсь, это поможет вам или кому-то еще, ищущему эту информацию (как я)

0 голосов
/ 26 мая 2011

Я знаю, что это скорее обходной путь, чем правильное решение, но вместо указания (а затем подключения к вашему приложению) определенного порта TCP вместо этого можно включить службу браузера SQL во время автоматической установки SQL Server. Это позволит вашему приложению подключаться к интересующему вас экземпляру на основе имени экземпляра, а не порта TCP.

Это может привести к снижению производительности при создании нового соединения, поскольку для получения клиентом порта для экземпляра необходим дополнительный обход в сеть, но (a) для приложений клиент-сервер с долгоживущими соединениями не будет проблемой, и (b) для приложений на сервере приложений с пулом соединений хорошо настроенный пул не сильно пострадает (я думаю), или может потребоваться немного больше соединений для достижения той же производительности.

Дополнительным преимуществом является то, что вы можете иметь более одного экземпляра SQL Server на одном хосте и не заботиться о портах. Например, в вашем (и моем) сценарии установки без вывода сообщений вы должны сначала проверить, используется ли нужный порт другим экземпляром. Использование браузера SQL устраняет необходимость этой логики в вашей установке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...