Какие порты открыть для Microsoft SQL Server?

38591
dnolan

Несколько раз обыскав Интернет, чтобы найти лучший способ подключения к SQL Server через брандмауэр Windows, я все еще не нашел лучшего способа сделать это. У кого-нибудь есть гарантированный способ определить, на каких портах работает SQL, чтобы вы могли открыть их в брандмауэре Windows?

13

4 ответа на вопрос

14
David Spillett

Если у вас запущен только один экземпляр SQL Server, и для него включен транспорт TCP / IP для нелокальных подключений, скорее всего, он будет прослушивать порт TCP по умолчанию: 1433.

Если у вас есть несколько экземпляров или какие-либо другие сложности, помимо «одного, экземпляра по умолчанию», то все может быть сложнее. Вам нужно будет установить порты для каждого экземпляра (по умолчанию они являются полуслучайными, что, как правило, не полезно для настройки брандмауэра), и вам также потребуется открыть службу браузера SQL (которая обычно прослушивает порт UDP 1434, хотя это тоже может быть перенастроен).

Существует довольно подробный набор заметок о SQL Server и брандмауэрах по адресу http://msdn.microsoft.com/en-us/library/cc646023.aspx.

4
Robert Gannon

Вам нужно будет запустить службу браузера для разрешения нестандартных экземпляров. Кроме того, открытие UDP 1434 позволит разрешать именованные экземпляры по имени вместо порта, поэтому вам не нужно будет использовать порты. Если вам неудобно открывать UDP 1434 на длительный срок или у вас есть администратор БД, который находится на месте и может подключаться локально, вы можете попросить их подключиться через SQL Server Mgmt Studio ИЛИ SQLCMD и указать соединение с сервером следующим образом:

TCP: имя_сервер \ имя_экземпляр

префикс с tcp заставит соединение tcp. Как только это будет сделано, вы можете подключиться к своему именованному экземпляру и запросить sys.dm_exec_connections, чтобы найти порт, на котором запущен экземпляр не по умолчанию, например:

SELECT local_tcp_port FROM sys.dm_exec_connections WHERE session_id = @@SPID

0
Brad

Порт по умолчанию для SQL Server - 1433

Если вы находитесь на именованном экземпляре, это не всегда так, хотя Mark Henderson 14 лет назад 0
Для именованного экземпляра номер порта является динамическим по умолчанию. mrdenny 14 лет назад 0
0
Arshia

Может быть, полезно изменить порт по умолчанию для вашего экземпляра. Вы видели http://blogs.msdn.com/b/dataaccesstechnologies/archive/2010/03/03/running-sql-server-default-instance-on-a -non-default-or-non-standard-tcp-port-tips-for-make-application-connectivity-work.aspx ?

Можете ли вы добавить соответствующие части ссылки в ваш ответ? Мы просим об этом помочь ОП, чтобы им не пришлось искать информацию, которая может не иметь к ним отношения. Это также позволяет сохранить соответствующую информацию на случай, если хостинг сайта выйдет из строя. Для получения дополнительной информации см. Этот [мета-пост] (http://meta.stackoverflow.com/q/8259). Cfinley 8 лет назад 2

Похожие вопросы