Браузер SQL Server выполняется как служба Windows. SQL Server прослушивает входящие запросы к ресурсам Microsoft SQL Server и предоставляет сведения об экземплярах SQL Server, установленных на компьютере. SQL Server предназначен для выполнения трех задач:
- просмотра списка доступных серверов;
- соединения с нужным экземпляром сервера;
- соединения с конечными точками через выделенное административное соединение (DAC).
Компонент Database Engine и Службы SSAS получают от службы «Браузер SQL Server» (sqlbrowser) имя и номер версии для каждого экземпляра. Браузер SQL Server устанавливается вместе с SQL Server.
Браузер SQL Server настраивается в ходе установки или с помощью диспетчера конфигурации SQL Server. По умолчанию служба «Браузер SQL Server» запускается автоматически:
- при обновлении установки;
- при установке в кластере;
- при установке именованного экземпляра компонента Компонент Database Engine, включая все экземпляры SQL Server Express;
- при установке именованного экземпляра служб Службы Analysis Services.
Историческая справка
До версии SQL Server 2000 (8.x) на компьютер можно было установить только один экземпляр SQL Server. SQL Server прослушивал входящие запросы через порт 1433, назначенный для SQL Server комитетом IANA. Порт может использоваться только одним экземпляром SQL Server , поэтому после появления в SQL Server 2000 (8.x) поддержки нескольких экземпляров SQL Serverбыл разработан протокол разрешения SQL Server (SSRP) для прослушивания UDP-порта 1434. Эта служба прослушивания отвечала на клиентские запросы, передавая им имена установленных экземпляров с указанием портов или именованных каналов, используемых экземпляром. Чтобы избавиться от ограничений протокола SSRP, в SQL Server 2005 (9.x) она была заменена службой браузера SQL Server .
How to Enable SQL Server Browser Service
Как работает служба «Обозреватель SQL Server»
Если SQL Server настроен на использование протокола TCP/IP, то при запуске экземпляра SQL Serverсерверу назначается порт TCP/IP. Если включен протокол именованных каналов, SQL Server прослушивает указанный именованный канал. Этот порт или «канал», используется конкретным экземпляром для обмена данными с клиентскими приложениями.
Экземпляру по умолчанию при установке назначается TCP-порт 1433 и канал sqlquery , но затем эти значения могут быть изменены администратором сервера при помощи диспетчера конфигурации SQL Server . Поскольку порт или канал может использоваться только одним экземпляром SQL Server , именованным экземплярам, включая SQL Server Express, назначаются другие номера портов и имена каналов. По умолчанию, если и именованные экземпляры и SQL Server Express настроены для работы с динамическими портами, это означает, что доступный порт назначается при запуске SQL Server. При необходимости экземпляру SQL Server может быть назначен конкретный порт, и при соединении клиенты смогут указать именно его. Но если порт назначается динамически, то он может измениться в любой момент после перезапуска SQL Server, поэтому клиент может и не знать правильного номера порта.
Установка и настройка Microsoft SQL Server 2019 + Management Studio
После запуска открывается обозреватель SQL Server и пытается занять UDP-порт 1434. Обозреватель SQL Server читает реестр, находит все экземпляры SQL Server на данном компьютере и помечает используемые ими порты и именованные каналы. Если сервер имеет несколько сетевых плат, обозреватель SQL Server возвращает первый допустимый порт, который найден для SQL Server. Обозреватель SQL Server поддерживает протоколы ipv6 и ipv4.
При запросе клиентом SQL Server ресурсов SQL Server клиентская сетевая библиотека передает на сервер UDP-сообщение через порт 1434. В ответ обозреватель SQL Server сообщает TCP/IP-порт или именованный канал запрошенного экземпляра. Затем сетевая библиотека клиентского приложения завершает соединение, отправляя запрос на сервер с указанием номера порта или имени канала, относящегося к нужному экземпляру. Служба обозревателя SQL Server не выполняет разрешение портов для экземпляров по умолчанию.
Применение обозревателя SQL Server
Если служба « SQL Server , браузер» не запущена, то возможность соединения с SQL Server остается только при указании верного номера порта или именованного канала. Например, к экземпляру SQL Server по умолчанию можно подключиться по порту TCP/IP, если он прослушивает порт 1433.
Однако если служба « SQL Server , браузер» не запущена, следующие соединения невозможны.
- Если какой-либо компонент пытается подключиться к именованному экземпляру без полного указания всех параметров (номера порта TCP/IP или именованного канала).
- Если компонент формирует или сохраняет сведения о сервере и экземпляре, которые затем используются другими компонентами для повторного соединения.
- При соединении с именованным экземпляром без указания номера порта или канала.
- При использовании выделенного административного соединения с именованным экземпляром или экземпляром по умолчанию без использования порта TCP/IP 1433.
- При использовании службы перенаправителя OLAP.
- При перечислении серверов в среде SQL Server Management Studio, программе Enterprise Manager или Query Analizer.
В клиент-серверном режиме работы SQL Server (например, если приложения обращаются к SQL Server по сети) при остановке или отключении службы « SQL Server , браузер» необходимо назначить каждому экземпляру определенные номера портов и указывать их в коде клиентских приложений. Такой подход приводит к следующим проблемам.
- Необходимо обновлять и поддерживать код клиентских приложений, чтобы они соединялись по соответствующим номерам портов.
- Порт, указанный для экземпляра, может быть уже занят другой службой или приложением, работающим на сервере, что может привести к недоступности экземпляра SQL Server .
Кластеризация
SQL Server не является кластеризованным ресурсом и не поддерживает отработку отказа с одного узла кластера на другой. Следовательно, при использовании кластера браузер SQL Server необходимо устанавливать и включать для каждого узла. При работе на кластерах обозреватель SQL Server прослушивает порт IP_ANY.
Если указан порт IP_ANY, при включении прослушивания на определенных IP-адресах пользователь должен настроить тот же TCP-порт на каждом из IP-адресов, поскольку браузер SQL Server возвращает каждую найденную пару «адрес-порт».
Установка, удаление и запуск из командной строки
По умолчанию браузер SQL Server устанавливается в C:Program Files (x86)Microsoft SQL Server90Sharedsqlbrowser.exe.
Служба браузера SQL Server удаляется при удалении последнего экземпляра SQL Server .
В целях диагностики обозреватель SQL Server можно запустить из командной строки с параметром -c:
\sqlbrowser.exe -c
Безопасность
Права доступа учетной записи
SQL Server Браузер прослушивает UDP-порт и принимает запросы без проверки подлинности с использованием протокола разрешения SQL Server (SSRP). SQL Server должен запускаться в контексте безопасности непривилегированного пользователя, чтобы минимизировать ущерб при возможном проникновении злоумышленника. Учетную запись входа можно изменить при помощи диспетчера конфигурации SQL Server . Права, которые необходимо назначить браузеру SQL Server .
- Запретить сетевой доступ к этому компьютеру.
- Запретить локальный вход в систему.
- Запретить вход в систему в качестве пакетного задания.
- Запретить вход в систему через службы терминалов.
- Вход в систему в качестве службы.
- Разрешить чтение и запись разделов реестра SQL Server , связанных с сетью (порты и каналы).
Учетная запись по умолчанию
Программа установки настраивает браузер SQL Server для использования учетной записи, выбранной для служб при установке. Можно указать другую учетную запись:
- Любая учетная запись доменлокальная .
- Учетная запись локальной службы
- Учетная запись локальной системы (не рекомендуется за избыточностью прав доступа).
Скрытие экземпляра SQL Server
Скрытые экземпляры SQL Server — это экземпляры, которые поддерживают только соединения через общую память. В SQL Serverустановите флаг HideInstance , чтобы браузер SQL Server не выдавал сведения об этом экземпляре сервера.
Применение брандмауэра
Для связи со службой браузера SQL Server на сервере, защищенном брандмауэром, в дополнение к TCP-порту SQL Server (например 1433) откройте UDP-порт 1434. Сведения о работе с брандмауэром см. в разделе «Практическое руководство. Настройка брандмауэра для доступа SQL Server» в документации по SQL Server.
Источник: learn.microsoft.com
Применение обозревателя SQL Server
Браузер SQL Server выполняется как служба Windows. SQL Server прослушивает входящие запросы к ресурсам Microsoft SQL Server и предоставляет сведения об экземплярах SQL Server, установленных на компьютере. SQL Server предназначен для выполнения трех задач:
· просмотра списка доступных серверов;
· соединения с нужным экземпляром сервера;
· соединения с конечными точками через выделенное административное соединение (DAC).
Для каждого экземпляра компонента Компонент Database Engine и служб Службы SSASслужба «SQL Server, браузер» (sqlbrowser) выдает имя и номер версии экземпляра. SQL Server устанавливается вместе с SQL Server.
SQL Server настраивается в ходе установки или с помощью диспетчера конфигурации SQL Server. По умолчанию служба «SQL Server, браузер» запускается автоматически:
· при обновлении установки;
· при установке в кластере;
· при установке именованного экземпляра компонента Компонент Database Engine, включая все экземпляры SQL Server Express;
· при установке именованного экземпляра служб Службы Analysis Services.
Историческая справка
До версии SQL Server 2000 (8.x)на компьютер мог быть установлен только один экземпляр SQL Server. SQL Server прослушивал входящие запросы через порт 1433, назначенный для SQL Server комитетом IANA. Порт может использоваться только одним экземпляром SQL Server, поэтому после появления в SQL Server 2000 (8.x) поддержки нескольких экземпляров SQL Server был разработан протокол разрешения SQL Server (SSRP) для прослушивания UDP-порта 1434. Эта служба прослушивания отвечала на клиентские запросы, передавая им имена установленных экземпляров с указанием портов или именованных каналов, используемых экземпляром. Чтобы избавиться от ограничений протокола SSRP, в SQL Server 2005 она была заменена службой браузера SQL Server.
Как работает служба «Обозреватель SQL Server»
Если SQL Server настроен на использование протокола TCP/IP, то при запуске экземпляра SQL Server серверу назначается порт TCP/IP. Если включен протокол именованных каналов, SQL Server прослушивает указанный именованный канал. Этот порт или «канал», используется конкретным экземпляром для обмена данными с клиентскими приложениями.
Экземпляру по умолчанию при установке назначается TCP-порт 1433 и канал sqlquery, но затем эти значения могут быть изменены администратором сервера при помощи диспетчера конфигурации SQL Server. Поскольку порт или канал может использоваться только одним экземпляром SQL Server, именованным экземплярам, включая SQL Server Express, назначаются другие номера портов и имена каналов. По умолчанию, если и именованные экземпляры и SQL Server Express настроены для работы с динамическими портами, это означает, что доступный порт назначается при запуске SQL Server. При необходимости экземпляру SQL Server может быть назначен конкретный порт, и при соединении клиенты смогут указать именно его. Но если порт назначается динамически, то он может измениться в любой момент после перезапуска SQL Server, поэтому клиент может и не знать правильного номера порта.
После запуска SQL Server запускается браузер и пытается занять UDP-порт 1434. SQL Server читает реестр, находит все экземпляры SQL Server на данном компьютере и помечает используемые ими порты и именованные каналы. Если сервер имеет несколько сетевых плат, браузер SQL Server возвращает первый допустимый порт, который найден для SQL Server. SQL Server поддерживает протоколы ipv6 и ipv4.
При запросе клиентом SQL Server ресурсов SQL Server клиентская сетевая библиотека передает на сервер UDP-сообщение через порт 1434. SQL Server Браузер в ответ сообщает TCP/IP-порт или именованный канал запрошенного экземпляра. Затем сетевая библиотека клиентского приложения завершает соединение, отправляя запрос на сервер с указанием номера порта или имени канала, относящегося к нужному экземпляру.
Дополнительные сведения о запуске и остановке службы браузера SQL Server см. в электронной документации SQL Server.
Применение обозревателя SQL Server
Если служба «SQL Server, браузер» не запущена, то возможность соединения с SQL Server остается только при указании верного номера порта или именованного канала. Например, к экземпляру SQL Server по умолчанию можно подключиться по порту TCP/IP, если он прослушивает порт 1433.
Однако если служба «SQL Server, браузер» не запущена, следующие соединения невозможны.
· Если какой-либо компонент пытается подключиться к именованному экземпляру без полного указания всех параметров (номера порта TCP/IP или именованного канала).
· Если компонент формирует или сохраняет сведения о сервере и экземпляре, которые затем используются другими компонентами для повторного соединения.
· При соединении с именованным экземпляром без указания номера порта или канала.
· При использовании выделенного административного соединения с именованным экземпляром или экземпляром по умолчанию без использования порта TCP/IP 1433.
· При использовании службы перенаправителя OLAP.
· При перечислении серверов в среде Среда SQL Server Management Studio, программе Enterprise Manager или Query Analizer.
В клиент-серверном режиме работы SQL Server (например, если приложения обращаются к SQL Server по сети) при остановке или отключении службы «SQL Server, браузер» необходимо назначить каждому экземпляру определенные номера портов и указывать их в коде клиентских приложений. Такой подход приводит к следующим проблемам.
· Необходимо обновлять и поддерживать код клиентских приложений, чтобы они соединялись по соответствующим номерам портов.
· Порт, указанный для экземпляра, может быть уже занят другой службой или приложением, работающим на сервере, что может привести к недоступности экземпляра SQL Server.
Кластеризация
SQL Server не является кластеризованным ресурсом и не поддерживает отработку отказа с одного узла кластера на другой. Следовательно, при использовании кластера браузер SQL Server необходимо устанавливать и включать для каждого узла. При работе на кластерах браузер SQL Server прослушивает порт IP_ANY.
Если указан порт IP_ANY, при включении прослушивания на определенных IP-адресах пользователь должен настроить тот же TCP-порт на каждом из IP-адресов, поскольку браузер SQL Server возвращает каждую найденную пару «адрес-порт».
Источник: poisk-ru.ru
Служба обозревателя SQL Server
Обозреватель SQL Server работает как служба Windows. Обозреватель SQL Server прослушивает входящие запросы к ресурсам Microsoft SQL Server и предоставляет клиентам сведения об экземплярах SQL Server, установленных на компьютере. Обозреватель SQL Server предназначен для выполнения трех задач:
- просмотра списка доступных серверов;
- соединения с нужным экземпляром сервера;
- соединения с конечными точками через выделенное административное соединение (DAC).
Для каждого экземпляра ядра СУБД и SQL Server Analysis Services (SSAS) служба обозревателя SQL Server (sqlbrowser) предоставляет имя экземпляра и номер версии. Обозреватель SQL Server устанавливается вместе с SQL Server.
Обозреватель SQL Server настраивается в ходе установки или с помощью диспетчера конфигурации SQL Server. По умолчанию служба обозревателя SQL Server запускается автоматически:
- при обновлении установки;
- при установке в кластере;
- при установке именованного экземпляра ядра СУБД, включая все экземпляры SQL Server Express;
- при установке именованного экземпляра служб SQL Server Analysis Services.
История
До версии SQL Server 2000 (8.x) на компьютер можно было установить только один экземпляр SQL Server. SQL Server прослушивал входящие запросы через порт 1433, назначенный для SQL Server комитетом IANA. Порт может использоваться только одним экземпляром SQL Server, поэтому после появления в SQL Server 2000 (8.x) поддержки нескольких экземпляров SQL Server был разработан протокол разрешения SQL Server (SSRP) для прослушивания UDP-порта 1434. Эта служба прослушивания отвечала на клиентские запросы, передавая им имена установленных экземпляров с указанием портов или именованных каналов, используемых экземпляром.
Чтобы избавиться от ограничений протокола SSRP, в SQL Server 2005 (9.x) она была заменена службой обозревателя SQL Server.
Как работает служба обозревателя SQL Server
Если SQL Server настроен на использование протокола TCP/IP, то при запуске экземпляра SQL Server серверу назначается порт TCP/IP. Если включен протокол именованных каналов, SQL Server прослушивает указанный именованный канал. Этот порт или «канал», используется конкретным экземпляром для обмена данными с клиентскими приложениями. Экземпляру по умолчанию при установке назначается TCP-порт 1433 и канал sqlquery , но затем эти значения могут быть изменены администратором сервера с помощью диспетчера конфигурации SQL Server.
Поскольку порт или канал может использоваться только одним экземпляром SQL Server, именованным экземплярам, включая SQL Server Express, назначаются другие номера портов и имена каналов. По умолчанию, если и именованные экземпляры и SQL Server Express настроены для работы с динамическими портами, это означает, что доступный порт назначается при запуске SQL Server.
При необходимости экземпляру SQL Server может быть назначен конкретный порт, и при соединении клиенты смогут указать именно его. Но если порт назначается динамически, то он может измениться в любой момент после перезапуска SQL Server, поэтому клиент может и не знать правильного номера порта.
После запуска открывается обозреватель SQL Server и пытается занять UDP-порт 1434. Обозреватель SQL Server читает реестр, находит все экземпляры SQL Server на данном компьютере и помечает используемые ими порты и именованные каналы. Если сервер имеет несколько сетевых плат, обозреватель SQL Server возвращает первый допустимый порт, который найден для SQL Server. Обозреватель SQL Server поддерживает протоколы ipv6 и ipv4.
При запросе клиентом SQL Server ресурсов SQL Server клиентская сетевая библиотека передает на сервер UDP-сообщение через порт 1434. В ответ обозреватель SQL Server сообщает TCP/IP-порт или именованный канал запрошенного экземпляра. Затем сетевая библиотека клиентского приложения завершает соединение, отправляя запрос на сервер с указанием номера порта или имени канала, относящегося к нужному экземпляру.
Сведения о запуске и остановке службы обозревателя SQL Server в статье Запуск, остановка, приостановка, возобновление, перезапуск служб SQL Server.
Применение обозревателя SQL Server
Если служба браузера SQL Server не запущена, вы по-прежнему сможете подключиться к SQL Server если указать правильный номер порта или именованный канал. Например, можно подключиться к экземпляру SQL Server по умолчанию по протоколу TCP/IP, если он работает через порт 1433.
Однако если служба браузера SQL Server не запущена, следующие подключения не работают:
- Если какой-либо компонент пытается подключиться к именованному экземпляру без полного указания всех параметров (номера порта TCP/IP или именованного канала).
- Если компонент формирует или сохраняет сведения о сервере и экземпляре, которые затем используются другими компонентами для повторного соединения.
- При соединении с именованным экземпляром без указания номера порта или канала.
- При использовании выделенного административного соединения с именованным экземпляром или экземпляром по умолчанию без использования порта TCP/IP 1433.
- При использовании службы перенаправителя OLAP.
- Перечисление серверов в SQL Server Management Studio или Azure Data Studio.
В клиент-серверном режиме работы SQL Server (например, если приложения обращаются к SQL Server по сети) при остановке или отключении службы обозревателя SQL Server необходимо назначить каждому экземпляру определенные номера портов и указывать их в коде клиентских приложений. Такой подход приводит к следующим проблемам.
- Необходимо обновить и поддерживать код клиентского приложения, чтобы убедиться, что он подключается к соответствующему порту.
- Порт, указанный для экземпляра, может быть уже занят другой службой или приложением, работающим на сервере, что может привести к недоступности экземпляра SQL Server.
Кластеризация
SQL Server Браузер не является кластеризованным ресурсом и не поддерживает отработку отказа с одного узла кластера на другой. Следовательно, при использовании кластера обозреватель SQL Server необходимо устанавливать и включать для каждого узла. При работе на кластерах обозреватель SQL Server прослушивает порт IP_ANY.
Если указан порт IP_ANY, при включении прослушивания на определенных IP-адресах пользователь должен настроить тот же TCP-порт на каждом из IP-адресов, поскольку обозреватель SQL Server возвращает каждую найденную пару «адрес-порт».
Установка, удаление и запуск из командной строки
По умолчанию обозреватель SQL Server устанавливается по следующему пути: C:Program Files (x86)Microsoft SQL Server90Sharedsqlbrowser.exe.
Служба обозревателя SQL Server удаляется при удалении последнего экземпляра SQL Server.
В целях диагностики обозреватель SQL Server можно запустить из командной строки с параметром -c:
\sqlbrowser.exe -c
Безопасность
Права доступа учетной записи
Обозреватель SQL Server прослушивает UDP-порт и принимает запросы без проверки подлинности с использованием протокола разрешения SQL Server (SSRP).
Обозреватель SQL Server должен запускаться в контексте безопасности непривилегированного пользователя, чтобы минимизировать ущерб при возможном проникновении злоумышленника. Учетную запись входа можно изменить при помощи диспетчера конфигурации SQL Server.
Права, которые необходимо назначить обозревателю SQL Server:
- Запретить сетевой доступ к этому компьютеру.
- Запретить локальный вход в систему.
- Запретить вход в систему в качестве пакетного задания.
- Запретить вход в систему через службы терминалов.
- Вход в систему в качестве службы.
- Разрешить чтение и запись разделов реестра SQL Server, связанных с сетью (порты и каналы).
Учетная запись по умолчанию
Программа установки настраивает обозреватель SQL Server на использование учетной записи, выбранной для служб при установке. К другим возможным учетным записям относятся:
- Любая учетная запись доменалокальная учетная запись.
- Учетная запись локальной службы.
- Учетная запись локальной системы (не рекомендуется за избыточностью прав доступа).
Скрытие экземпляра SQL Server
Скрытые экземпляры SQL Server — это экземпляры, которые поддерживают только соединения через общую память. Для SQL Server установите HideInstance флаг , указывающий, что SQL Server Браузер не должен отвечать сведениями об этом экземпляре сервера.
Применение брандмауэра
Для связи со службой обозревателя SQL Server на сервере, защищенном брандмауэром, в дополнение к TCP-порту SQL Server (например 1433) откройте UDP-порт 1434. Сведения о работе с брандмауэром см. в статье Настройка брандмауэра Windows для разрешения доступа к SQL Server.
Следующие шаги
Дополнительные сведения о связанных понятиях см. в следующих статьях:
- Сетевые протоколы и библиотеки
- Соединение с использованием IPv6
Источник: learn.microsoft.com