Как создать связанный сервер с портом не по умолчанию - PullRequest
11 голосов
/ 18 сентября 2009

Я хочу создать связанный сервер в MS SQL Server 2000 с сервером MS SQL 2005, который работает через порт x (не порт по умолчанию 1433). Но это не работает, так как я нигде не могу указать порт!?

Используя sqlcmd (указав порт x), я могу без проблем подключиться к серверу, но не могу настроить его как связанный сервер.

Как это можно сделать?

Ответы [ 5 ]

9 голосов
/ 15 июня 2012

Другой способ добиться этого (при условии, что вы настроили 8080 в SQL Server) - использовать следующий код:

EXEC sp_addlinkedserver 'myserver', '', 'SQLNCLI', 'xx.xx.xx.xx,8080'

EXEC sp_addlinkedsrvlogin 'myserver', 'FALSE', NULL, 'user', 'pwd'
7 голосов
/ 16 января 2013

По предложению Шейна добавление псевдонима сработало для меня.

(SQL Server 2008 R2):

  • Открыть диспетчер конфигурации SQL Server
  • Развернуть "Диспетчер конфигурации SQL Server (локальный)"
  • Развернуть "Конфигурация собственного клиента SQL 10.0 (32 бита)"
  • Нажмите «Псевдонимы»
  • Щелкните правой кнопкой мыши в списке псевдонимов справа и выберите «Новый псевдоним»
  • «Псевдоним» - это то, на что вы хотите сослаться на связанный сервер.
  • «Порт №» - ваш порт по умолчанию.
  • «Протокол» зависит, но вы, скорее всего, можете оставить его как «TCP / IP».
  • «Сервер» - это адрес сервера, к которому вы пытаетесь подключиться (не включая порт).

(повторите шаги для «Конфигурация собственного клиента SQL 10.0» (без текста «32 бита»))

Добавление псевдонима таким образом позволило мне добавить связанный сервер с типом сервера как «SQL Server», без настройки параметров поставщика и т. Д.

7 голосов
/ 18 сентября 2009

В диалоговом окне нового связанного сервера выберите «Другой источник данных», выберите «Поставщик Microsoft OLE DB для SQL Server» в качестве имени поставщика, а затем используйте его в качестве строки поставщика:

Data Source=192.168.1.100,1433;Network Library=DBMSSOCN;Initial Catalog=yourdbname;User ID=username;Password=password;

Замените IP и "1433" на ваш IP и номер порта.

Дополнительная информация о строках подключения: http://support.microsoft.com/kb/238949

0 голосов
/ 05 декабря 2016

Я должен был сделать это и сегодня (добавить связанный сервер с портом не по умолчанию). В моем случае это было добавление связанного сервера SQL Server 2014 к SQL Server 2016.

Шаги с использованием SQL Server Management Studio:

  1. Откройте SSMS и перейдите в раздел Объекты сервера> Связанный сервер> Новый связанный сервер
  2. Используйте этот формат для связанного сервера ip-address-of-linked-server\instance-name,non-default-port или 192.168.10.5\dev-sql,25250. Имя экземпляра требуется только в том случае, если этот экземпляр не является экземпляром по умолчанию на целевом связанном сервере. Кроме того, вы можете заменить IP-адрес именем хоста, если связанный сервер находится в вашей локальной сети.

  3. Выберите SQL Server для типа сервера

  4. Добавьте все учетные данные, необходимые для подключения, с помощью вкладки «Безопасность»
  5. Запросите новый сервер, используя формат, аналогичный указанному в SQLDBA выше .

example screenshot

То же самое, используя T-SQL:

EXEC master.dbo.sp_addlinkedserver @server = N'192.168.10.5\dev-sql,25250', @srvproduct=N'SQL Server'

EXEC master.dbo.sp_addlinkedsrvlogin @rmtsrvname=N'192.168.10.5\dev-sql,25250',@useself=N'False',@locallogin=NULL,@rmtuser=N'my_username',@rmtpassword='my_pswd'

0 голосов
/ 05 октября 2016

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

  SELECT * FROM [SQLSERVER,14333].[DATABASE].[dbo].[Table1]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...