Как на sql server разрешить удаленные соединения
Перейти к содержимому

Как на sql server разрешить удаленные соединения

  • автор:

Просмотр и настройка параметров соединения с удаленным сервером (SQL Server)

В этом разделе описываются способы просмотра и настройки параметров подключения к удаленному серверу на уровне сервера в SQL Server с помощью среды SQL Server Management Studio или Transact-SQL.

В этом разделе

  • Перед началом работыБезопасность
  • Просмотр и настройка параметров соединения с удаленным сервером с использованиемСреда SQL Server Management StudioTransact-SQL
  • Дальнейшие действия.После настройки параметров соединения с удаленным сервером

Перед началом

Безопасность

Разрешения

Для выполнения хранимой процедуры sp_serveroption необходимо разрешение ALTER ANY LINKED SERVER на сервер.

Использование среды SQL Server Management Studio

Просмотр и настройка параметров соединения с удаленным сервером
  1. В обозревателе объектов щелкните правой кнопкой мыши сервер и выберите пункт Свойства.
  2. В диалоговом окне Свойства SQL Server — имя_сервера> щелкните элемент Соединения.
  3. На странице Соединения просмотрите параметры Соединения с удаленными серверами и измените их при необходимости.
  4. Повторите шаги 1-3 на другом сервере данной пары серверов.

Использование Transact-SQL

Просмотр параметров соединения удаленным сервером
  1. Установите соединение с компонентом Компонент Database Engine.
  2. На панели «Стандартная» нажмите Создать запрос.
  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере хранимая процедура sp_helpserver используется для возврата сведений обо всех удаленных серверах.
USE master; GO EXEC sp_helpserver ; 
Настройка параметров соединения с удаленным сервером
  1. Установите соединение с компонентом Компонент Database Engine.
  2. На панели «Стандартная» нажмите Создать запрос.
  3. Скопируйте следующий пример в окно запроса и нажмите кнопку Выполнить. В этом примере показано использование хранимой процедуры sp_configure для настройки удаленного сервера. В следующем примере удаленный сервер настраивается в соответствии с другим экземпляром SQL Server, SEATTLE3 , для совместимости параметров сортировки с локальным экземпляром SQL Server.
USE master; EXEC sp_serveroption 'SEATTLE3', 'collation compatible', 'true'; 

Дальнейшие действия. После настройки параметров соединения с удаленным сервером

Чтобы изменения вступили в силу, необходимо остановить и перезапустить удаленный сервер.

Удаленные серверы

Удаленные серверы в SQL Server поддерживаются лишь для обратной совместимости. Новые приложения должны использовать вместо них связанные серверы. Дополнительные сведения см. в статье Связанные серверы (компонент Database Engine).

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

Если требуется настроить серверы таким образом, чтобы хранимые процедуры выполнялись на другом сервере, и при этом не существует уже выполненной настройки удаленных серверов, используйте связанные сервера вместо удаленных серверов. Связанные сервера поддерживают выполнение и хранимых процедур, и распределенных запросов; в то же время удаленные сервера поддерживают только хранимые процедуры.

Подробности использования удаленных серверов

Удаленные сервера настраиваются парами. Чтобы настроить пару удаленных серверов, нужно настроить оба сервера таким образом, чтобы они являлись удаленными серверами друг для друга.

Обычно устанавливать параметры конфигурации удаленных серверов не требуется. SQL Server при установке значений по умолчанию соединения с удаленным сервером будут разрешены как на локальном, так и на удаленном компьютерах.

Для функционирования доступа к удаленному серверу требуется, чтобы параметр конфигурации remote access был установлен в 1 как на локальном, так и на удаленном компьютерах. Параметр remote access управляет возможностью подключений с удаленных серверов (это значение по умолчанию). Этот параметр можно сбросить, воспользовавшись хранимой процедурой Transact-SQL sp_configure или же средой SQL Server Management Studio. Чтобы установить параметр в среде SQL Server Management Studioна странице Свойства соединений с серверами , используйте возможность Разрешить удаленные соединения с этим сервером. Чтобы открыть вкладку Свойства соединений с сервером , в обозревателе объектов щелкните имя сервера правой кнопкой мыши и выберите Свойства. В окне Свойства сервера выберите вкладку Соединения .

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

Безопасность удаленных серверов

Чтобы включить вызовы по протоколу RPC для удаленного сервера, необходимо настроить сопоставления имен входа на удаленном сервере и, возможно, на локальном сервере, где запущен экземпляр SQL Server. По умолчанию вызовы удаленных процедур (RPC) в SQL Serverотключены. Такая конфигурация усиливает безопасность сервера, уменьшая его подверженную атакам контактную зону. Перед использованием RPC необходимо включить эту функцию. Дополнительные сведения см. в статье sp_configure (Transact-SQL).

Настройка удаленного сервера

Сопоставления удаленных имен входа должны быть настроены на удаленном сервере. При помощи данных сопоставлений удаленный сервер привязывает входящее имя входа соединения RPC от определенного сервера к локальному имени входа. Сопоставления удаленных имен входа могут быть установлены при помощи хранимой процедуры sp_addremotelogin на удаленном сервере.

Параметр trusted процедуры sp_remoteoption не поддерживается в SQL Server.

Настройка локального сервера

Для локальных имен входа SQL Server , прошедших проверку подлинности, устанавливать сопоставление имен входа на локальном сервере не нужно. SQL Server используются локальное имя входа и пароль для подключения к удаленному серверу. Для имен входа, прошедших проверку подлинности Windows, настройте сопоставление локальных имен входа, определяющее пароль и имя входа, используемые экземпляром SQL Server при создании подключения RPC к удаленному серверу.

Для имен входа, созданных проверкой подлинности Windows, необходимо создать сопоставление имени входа и пароля при помощи хранимой процедуры sp_addlinkedservlogin . Данное имя входа и пароль должны совпадать с входящим именем входа и паролем, представленными удаленным сервером и созданными процедурой sp_addremotelogin.

По возможности используйте аутентификацию Windows.

Пример системы безопасности удаленного сервера

Проверьте следующие установки SQL Server : serverSend и serverReceive. МетодserverReceive настраивается для сопоставления имени входа serverSend, поступающего от serverSend, с прошедшим проверку в SQL Server с помощью serverReceive, поступающего от Alice. Другое входное имя входа из serverSend, с именем Joe, сопоставлено с именем входа, прошедшим проверку подлинности SQL Server , в serverReceive, с именем Joe.

В следующем примере кода Transact-SQL serverSend настраивается на выполнение вызовов RPC по отношению к serverReceive .

--Create remote server entry for RPCs --from serverSend in serverReceive. EXEC sp_addserver 'serverSend'; GO --Create remote login mapping for login 'Sales_Mary' from serverSend --to Alice. EXEC sp_addremotelogin 'serverSend', 'Alice', 'Sales_Mary'; GO --Create remote login mapping for login Joe from serverReceive --to same login. --Assumes same password for Joe in both servers. EXEC sp_addremotelogin 'serverSend', 'Joe', 'Joe'; GO 

В serverSend сопоставление местного имени входа создается для имени входа Sales\Mary , прошедшего проверку подлинности Windows, и имени входа Sales_Mary . Для имени входа Joe локальное сопоставление не требуется, так как по умолчанию используются одинаковые имена входа и пароли, и serverReceive уже обладает сопоставлением для Joe .

--Create a remote server entry for RPCs from serverReceive. EXEC sp_addserver 'serverReceive'; GO --Create a local login mapping for the Windows authenticated login. --Sales\Mary to Sales_Mary. The password should match the --password for the login Sales_Mary in serverReceive. EXEC sp_addlinkedsrvlogin 'serverReceive', false, 'Sales\Mary', 'Sales_Mary', '430[fj%dk'; GO 

Просмотр свойств локального или удаленного сервера

Для просмотра атрибутов локальных и удаленных серверов можно использовать расширенную хранимую процедуру xp_msver . В список этих атрибутов входят: номер версии SQL Server, тип и число процессоров компьютера и версия операционной системы. С локального сервера можно просматривать базы данных, файлы, имена входа и инструменты удаленного сервера. Дополнительные сведения см. в статье xp_msver (Transact-SQL).

Как разрешить удаленные соединения SQL Server: подробная инструкция для начинающих

После выполнения этих шагов удаленные соединения должны быть разрешены в SQL Server.

Удачи в вашей работе!

Детальный ответ

Как разрешить удаленные соединения SQL Server

Добро пожаловать! В этой статье я помогу вам разобраться, как разрешить удаленные соединения в SQL Server. Удаленные соединения позволяют внешним клиентам подключаться к вашему серверу SQL из других машин. Это может быть полезно, если вы хотите разрабатывать приложения или удаленно управлять базой данных. Давайте начнем!

Шаг 1: Проверьте настройки SQL Server

Прежде чем вы сможете установить удаленное соединение к SQL Server, вам необходимо убедиться, что сервер настроен для принятия удаленных соединений.

Откройте SQL Server Management Studio (SSMS) и подключитесь к вашему серверу. В меню выберите «Настройка» (Configuration) и «Параметры сервера» (Server Configuration).

Убедитесь, что опция «Разрешить удаленные соединения с этим сервером» (Allow remote connections to this server) включена. Если она не выбрана, активируйте ее и сохраните настройки.

Шаг 2: Проверьте настройки брандмауэра

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

Откройте «Настройки безопасности Windows» (Windows Security Settings) и выберите «Брандмауэр Windows Defender» (Windows Defender Firewall).

Нажмите на «Разрешить приложение или функцию через брандмауэр» (Allow an app or feature through Windows Firewall) и убедитесь, что «sqlserver.exe» и «sqlbrowser.exe» разрешены в вашей частной и общественной сети. Если они отключены, включите их.

Шаг 3: Настройка SQL Server Surface Area Configuration

SQL Server Surface Area Configuration позволяет управлять различными аспектами безопасности SQL Server, включая удаленные соединения.

Запустите SQL Server Surface Area Configuration и выберите «Позволить удаленные соединения» (Allow remote connections). Если опция не выбрана, активируйте ее.

Шаг 4: Проверка настроек протоколов

Проверьте, какие протоколы используются SQL Server для подключения. Откройте SQL Server Configuration Manager и выберите «Протоколы SQL Server» (SQL Server Network Configuration).

Убедитесь, что TCP/IP протокол разрешен. Если он отключен, щелкните правой кнопкой мыши и выберите «Включить» (Enable).

Шаг 5: Перезагрузите службы SQL Server

Чтобы изменения в настройках вступили в силу, перезагрузите службы SQL Server.

Запустите «SQL Server Configuration Manager», выберите «Службы SQL Server» (SQL Server Services), найдите вашу инстанцию SQL Server и щелкните правой кнопкой мыши, чтобы перезагрузить службу.

Шаг 6: Проверьте подключение

Теперь, когда удаленные соединения в SQL Server разрешены, вы можете проверить подключение с клиента.

Используйте следующий код в вашем приложении или SQL Server Management Studio, чтобы подключиться к удаленному серверу:

Data Source=[ИмяСервера]; User Password=[Пароль];

Замените «[ИмяСервера]» на имя вашего сервера SQL, «[Пользователь]» на имя пользователя и «[Пароль]» на пароль для подключения.

Заключение

Теперь вы знаете, как разрешить удаленные соединения в SQL Server. Убедитесь, что вы следуете всем указанным шагам, чтобы установить удаленное соединение к вашему серверу SQL. Удачи в вашем дальнейшем пути в изучении баз данных!

Как разрешить удаленные соединения на SQL Server: подробный гайд с пошаговой инструкцией

Чтобы разрешить удаленные соединения на SQL Server, вы должны выполнить следующие шаги: 1. Убедитесь, что у вас есть права администратора на сервере SQL. 2. Запустите SQL Server Configuration Manager. 3. В SQL Server Configuration Manager выберите «SQL Server Network Configuration» в левой панели, затем выберите вашу версию SQL Server (например, SQL Server 2019 Network Configuration). 4. В правой панели выберите «Protocols for [название вашего SQL Server]». 5. Убедитесь, что TCP/IP протокол включен. Если он выключен, щелкните правой кнопкой мыши на TCP/IP и выберите «Включить». 6. Нажмите правой кнопкой мыши на TCP/IP и выберите «Properties» (Свойства). 7. Перейдите на вкладку «IP Addresses» (IP-адреса). 8. Пролистайте вниз до раздела «IPAll» (IP все) и установите значение «TCP Port» (порт TCP) на значение по умолчанию — 1433. 9. Нажмите «OK» (ОК), чтобы сохранить настройки. 10. Перезапустите службу SQL Server, чтобы внести изменения. Теперь удаленные соединения должны быть разрешены на вашем SQL Server.

Детальный ответ

Как разрешить удаленные соединения на SQL Server

Приветствую! В данной статье мы рассмотрим, как разрешить удаленные соединения на SQL Server. Этот процесс включает несколько шагов, которые приведены ниже.

Шаг 1: Проверьте настройки SQL Server

  1. Откройте SQL Server Management Studio.
  2. Подключитесь к вашему серверу баз данных.
  3. Щелкните правой кнопкой мыши на сервере и выберите «Properties» (Свойства).
  4. Перейдите на вкладку «Connections» (Соединения).
  5. Убедитесь, что опция «Allow remote connections to this server» (Разрешить удаленные соединения с этим сервером) отмечена.

Если опция не отмечена, отметьте ее и нажмите «OK» для сохранения изменений.

Шаг 2: Проверьте настройки брандмауэра

Вторым шагом является проверка настройки брандмауэра для разрешения удаленных соединений. В большинстве случаев, если брандмауэр включен, вам необходимо добавить исключение для SQL Server.

Для настройки брандмауэра, выполните следующие шаги:

  1. Откройте «Windows Defender Firewall with Advanced Security» (Брандмауэр Windows с расширенными возможностями).
  2. Выберите «Inbound Rules» (Входящие правила).
  3. Щелкните правой кнопкой мыши на «New Rule» (Новое правило).
  4. Выберите тип правила «Port» (Порт) и нажмите «Next» (Далее).
  5. В качестве типа порта выберите «TCP» и введите номер порта SQL Server.
  6. Примечание: По умолчанию, SQL Server использует порт 1433.
  7. Выберите «Allow the connection» (Разрешить соединение) и нажмите «Next» (Далее).
  8. Выберите настройки для области применения правила и нажмите «Next» (Далее).
  9. Укажите имя для правила и добавьте опциональное описание. Нажмите «Finish» (Готово).

После завершения этих шагов, ваш брандмауэр будет настроен для разрешения удаленных соединений к SQL Server.

Шаг 3: Проверьте настройки Системы

В третьем шаге, необходимо проверить настройки системы для разрешения удаленных соединений:

  1. Откройте «SQL Server Configuration Manager» (Менеджер конфигурации SQL Server).
  2. Разверните «SQL Server Network Configuration» (Сетевая конфигурация SQL Server).
  3. Выберите «Protocols for [Instance Name]» (Протоколы для [имя экземпляра]).
  4. Убедитесь, что протокол TCP/IP включен.
  5. Если протокол TCP/IP отключен, щелкните правой кнопкой мыши на нем и выберите «Enable» (Включить).
  6. Перезапустите SQL Server, чтобы изменения вступили в силу.

После этого ваш SQL Server будет настроен для принятия удаленных соединений. Вы можете проверить это, подключившись к серверу с удаленного компьютера и выполнить несколько простых запросов.

Пример кода

Вот пример кода, который подключается к удаленному серверу баз данных и выполняет простой запрос:

 USE [YourDatabaseName] GO DECLARE @sqlQuery VARCHAR(100) SET @sqlQuery = 'SELECT * FROM [YourTableName]' EXEC ('SELECT * FROM OPENROWSET(''SQLNCLI'', ''Server=YourServerName;Database=YourDatabaseName;User ''' + @sqlQuery + ''')') 

Не забудьте заменить «YourServerName», «YourDatabaseName», «YourTableName», «YourUsername» и «YourPassword» на соответствующие значения для вашей базы данных.

Теперь вы знаете, как разрешить удаленные соединения на SQL Server. Нужно всего лишь следовать указанным выше шагам, и вы будете готовы к удаленному подключению к вашей базе данных.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *