无法使用 Visual Studio 中的访问 SQL 别名连接到 SQL 服务器

问题描述 投票:0回答:1

我正在使用 .Net Framework 4.8 开发 ASP.NET 项目。使用别名连接到 SQL 时,我收到以下错误。

建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供商:TCP 提供商,错误:0 - 访问被拒绝。)

此外,我已验证我的 SQL 别名配置是否正确,并且从 SQL Server Management Studio 到 SQL Server 的连接似乎成功。

不幸的是,我无法从 Visual Studio 2019 连接到 SQL 服务器。

sql-server database visual-studio sqlconnection
1个回答
0
投票

这是一个很晚的答案,但可能对其他人有用。我与通过别名连接的 SQL Management Studio 处于同一条船上,但 Visual Studio 不会。非常令人沮丧。

问题是 SQL Management Studio 现在是 64 位,但 VS 2022 仍然是 32 位。我已经设置了 64 位 alais,但没有设置 VS 需要的 32 位!

在 SQL 2022 中,您似乎无法再在 SQL Server 配置管理器中设置别名。您仍然需要在那里设置 TCP/IP 协议。

选择“XXX 的协议”,其中 XXX 是您的服务器名称。这将位于“SQL Server 网络配置”下 双击 TCP/IP,然后在协议选项卡上确保“启用”设置为“是”,“全部监听”设置为“是” 在“IP 地址”选项卡上,向下滚动到底部 IPALL 并将“TCP 动态端口”设置为空白(非零),将“TCP 端口”设置为 1433

您现在需要使用 cliconfg.exe(而不是 cliconfg.dll)来设置别名。有两个版本,其中一个在

C:\Windows\System32

还有一进

C:\Windows\SysWOW64

两者的过程完全相同。

在常规选项卡中启用 TCP/IP 在“别名”选项卡中选择“添加” 填写您要使用的服务器别名 在左侧面板中选择 TCP/IP 输入您的服务器名称(在我的例子中是 DA2\SQLEXPRESS) 不要使用“动态取消端口”。相反,将端口号设置为 1433 单击“确定” 单击应用然后关闭 CliConfg

对两个版本的 cliconfg.exe 重复此操作。

这会设置 32 位和 64 位别名。

© www.soinside.com 2019 - 2024. All rights reserved.