如何使用非默认端口创建链接服务器

räp*_*äph 11 sql t-sql sql-server

我想在MS SQL Server 2000中创建一个链接服务器到MS SQL 2005 Server,它运行在端口x(不是默认端口1433)上.但它不起作用,因为我无法在任何地方指定端口!?

使用sqlcmd(指定端口x),我可以毫无问题地连接到服务器 - 但我无法将其设置为链接服务器.

如何才能做到这一点?

小智 10

实现此目的的另一种方法(假设您在SQL Server中设置了8080)使用以下代码:

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

EXEC sp_addlinkedsrvlogin 'myserver', 'FALSE', NULL, 'user', 'pwd'
Run Code Online (Sandbox Code Playgroud)


Sha*_*tle 7

在新的链接服务器对话框中,选择"其他数据源",选择"Microsoft OLE DB Provider for SQL Server"作为提供程序名称,然后将其用作提供程序字符串:

Data Source=192.168.1.100,1433;Network Library=DBMSSOCN;Initial Catalog=yourdbname;User ID=username;Password=password;
Run Code Online (Sandbox Code Playgroud)

用您的IP和端口号替换IP和"1433".

有关连接字符串的更多信息:http://support.microsoft.com/kb/238949


Nig*_*vel 7

根据Shane的建议,添加别名对我有用.

(SQL Server 2008 R2):

  • 打开SQL Server配置管理器
  • 展开"SQL Server配置管理器(本地)"
  • 展开"SQL Native Client 10.0配置(32位)"
  • 点击"别名"
  • 右键单击右侧别名列表,然后选择"新别名"
  • "别名"是您想要引用链接服务器的任何内容.
  • "端口号"是您的非默认端口.
  • "协议"取决于,但你很可能把它留作"TCP/IP".
  • "服务器"是您尝试连接的服务器的地址(不包括端口).

(重复"SQL Native Client 10.0配置"(减去"32位"文本)的步骤)

以这种方式添加别名允许我添加服务器类型为"SQL Server"的链接服务器,而无需配置提供程序选项等.