为指向 sql 默认实例的 SQL Server 命名实例创建别名

Stu*_*Stu 3 sql-server sql-server-2012

我在默认实例中运行的 Windows 2012 R2 上安装了 SQL Server 2012 Std Ed,以及一个想要使用命名实例连接到它的应用程序(无法更改)

例如

  • 服务器名称 - mySQLServer
  • 应用程序所需的别名 - mySQLServer\CrazyApp

我试图创建一个别名如下:

在此处输入图片说明

  • 别名 - .\crazyapp
  • 端口号 - 1433
  • 协议 - TCP/IP
  • 服务器 。

我有:

  • 勾选 TCP/IP 协议已启用
  • 已启动 SQL 浏览器(不需要,我相信)
  • 重新启动 SQL(多次)
  • 尝试使用机器名称而不是“。”
  • 尝试不使用端口号而不是 1433。
  • 头撞墙

……无济于事。

是否有可能做到这一点,如果是这样,会不会有好心人告诉我我做错了什么。

谢谢!

Stu*_*Stu 8

我的观察是有必要在应用程序服务器上使用 cliconfg.exe以便将特定实例(例如“\crazyapp”)映射到远程 SQL 服务器上的默认实例。

在应用程序服务器上,我使用 cliconfg.exe 设置了别名,同时使用:

  • C:\Windows\System32\cliconfg.exe(64 位)和
  • C:\Windows\SysWOW64\cliconfg.exe(32 位)(感谢,@DaniSQL)

从应用服务器,我已经配置: 别名设置

然后我从应用程序服务器成功地测试了这个,使用 SSMS 到远程 SQL 实例。

在托管 SQL Server 的服务器上创建别名不起作用,即使应用程序服务器可以通过 DNS 解析 SQL Server 名称。为了从命名实例映射到默认实例,必须在应用程序服务器上创建别名。

感谢@ypercube 引导我朝着正确的方向前进。