Настройка компонента Database Engine на прослушивание нескольких портов TCP

Применимо к: даSQL Server (все поддерживаемые версии)

В этой теме описан процесс настройки компонента Компонент Database Engine для прослушивания нескольких портов на SQL Server с помощью диспетчера конфигурации SQL Server. При включении TCP/IP для SQL Serverкомпонент Компонент Database Engine будет прослушивать входящие соединения в точке соединения по IP-адресу и номеру порта TCP. В результате выполнения следующих процедур будет создана конечная точка потока табличных данных (TDS), чтобы SQL Server мог прослушивать соединения на дополнительном порту TCP.

Ниже перечислены возможные причины создания второй конечной точки TDS.

  • Усиление безопасности путем настройки брандмауэра для предоставления доступа к конечной точке по умолчанию только локальным клиентским компьютерам в определенной подсети. Обеспечьте доступ к SQL Server из Интернета для команды поддержки путем создания новой конечной точки, которую брандмауэр делает видимой из Интернета, и предоставьте права на соединение с этой конечной точкой только команде поддержки сервера.

  • Установка соответствия соединений определенным процессорам при использовании технологии доступа к неоднородной памяти (NUMA).

Настройка конечной точки TDS включает в себя следующие шаги, которые могут быть выполнены в любом порядке.

  • Создайте конечную точку TDS для порта TCP и восстановите доступ к конечной точке по умолчанию, если необходимо.

  • Предоставьте необходимым участникам на уровне сервера доступ к конечной точке.

  • Укажите номер порта TCP для выбранного IP-адреса.

Дополнительные сведения о настройках брандмауэра Windows по умолчанию и описание портов TCP, влияющих на компонент Database Engine, службы Analysis Services, службы Reporting Services и службы Integration Services, см. в разделе Настройка брандмауэра Windows для разрешения доступа к SQL Server.

Создание конечной точки TDS

  • Выполните следующую инструкцию, чтобы создать конечную точку с именем CustomConnection для порта 1500 на всех доступных адресах TCP сервера.

    USE master;  
    GO  
    CREATE ENDPOINT [CustomConnection]  
    STATE = STARTED  
    AS TCP  
       (LISTENER_PORT = 1500, LISTENER_IP =ALL)  
    FOR TSQL() ;  
    GO  
    

При создании новой конечной точки Transact-SQL разрешения на соединение с конечной точкой потока табличных данных по умолчанию для группы public отменяются. Если группе public требуется доступ к конечной точке по умолчанию, то ей необходимо предоставить это разрешение, выполнив инструкцию GRANT CONNECT ON ENDPOINT::[TSQL Default TCP] to [public]; .

Предоставление доступа к конечной точке

  • Выполните следующую инструкцию, чтобы предоставить группе SQLSupport домена corp доступ к конечной точке CustomConnection .

    GRANT CONNECT ON ENDPOINT::[CustomConnection] to [corp\SQLSupport] ;  
    GO  
    

Настройка компонента SQL Server Database Engine на прослушивание дополнительного порта TCP

  1. В диспетчере конфигурации SQL Server разверните узел Сетевая конфигурация SQL Server и щелкните элемент Протоколы для <имя_экземпляра> .

  2. Разверните узел Протоколы для <имя_экземпляра> и щелкните TCP/IP.

  3. В правой панели щелкните правой кнопкой мыши отключенный IP-адрес, который необходимо включить, и выберите Включить.

  4. Щелкните правой кнопкой мыши IPAll и выберите пункт Свойства.

  5. В поле TCP-порт введите номера портов, которые должны прослушиваться компонентом Компонент Database Engine , разделяя их запятыми. В нашем примере: если прослушивается порт по умолчанию 1433, введите ,1500 , чтобы поле содержало строку 1433,1500, и нажмите кнопку OK.

    Примечание

    Если порт включается не для всех IP-адресов, настройте дополнительный порт в окне свойств только для необходимого адреса. Затем на панели консоли щелкните правой кнопкой мыши TCP/IP, выберите пункт Свойства и в поле Прослушивать все выберите Нет.

  6. На левой панели щелкните Службы SQL Server.

  7. На правой панели щелкните правой кнопкой мыши SQL Server <имя_экземпляра> и выберите Перезагрузка.

    После перезагрузки компонента Компонент Database Engine журнал ошибок будет содержать список портов, прослушиваемых SQL Server.

Подключение к новой конечной точке

  • Выполните следующую инструкцию, чтобы подключиться к конечной точке CustomConnection экземпляра SQL Server по умолчанию на сервере с именем ACCT, используя доверительное соединение, предполагая, что пользователь является членом группы [corp\SQLSupport].

    sqlcmd -SACCT,1500  
    

См. также:

CREATE ENDPOINT (Transact-SQL)
DROP ENDPOINT (Transact-SQL)
GRANT, предоставление разрешений конечной точке (Transact-SQL)
Сопоставление портов TCP/IP с узлами NUMA (SQL Server)