【发布时间】:2011-02-11 10:42:55
【问题描述】:
我有 SQL Server 2000,它还有 2 个其他 sql 实例。主服务器没有问题,下面我说的是这两个实例,
他们分享,
- 同一台机器
- 相同的IP
- 相同的实例名称
- 同一个端口
我也想知道它是怎么做到的。
使用查询分析器一旦连接,
MyServer\Invent (it connects to first instance)
MyServer\Invent,1433 (it connects to second instance)
(是的,它发生了。我 100% 确定这一点,因为我在其中有单独的数据库)
现在问题来了,
使用 C# SqlConnection,我无法连接到第一个,但可以连接到第二个。
1. Data Source=MyServer\Invent;Persist Security Info=True;Initial Catalog=TEST;uid=admin;pwd=123
2. Data Source=MyServer\Invent,1433;Persist Security Info=True;Initial Catalog=TEST;uid=admin;pwd=123
一旦我使用了第一个连接字符串,它会挂起一段时间并收到以下错误消息...
"在建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。未找到服务器或无法访问该服务器。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:SQL 网络接口,错误:26 - 错误定位服务器/指定的实例)“
在网上搜索过这个,很多人说安装这个是可能的。并且一个连接应该使用命名管道 (tcp/445)
知道如何解决这个问题吗? 任何可能的连接字符串格式? 无论如何为命名管道制作连接字符串?
【问题讨论】:
-
仅供参考,我刚刚使用“企业管理器”从端口检查过两者都共享 1433。毫无疑问。
-
可能是防火墙问题?
标签: c# sql-server connection-string instance named-pipes