sti*_*ghy 7 .net sql-server-2012
我在生产环境中有一个奇怪的错误,但不是在开发环境中.在我的开发环境中,使用Visual Studio 2010,我可以毫无问题地连接到Sql Server 2012.当我将Windows窗体应用程序复制到同一网络中的其他PC时,我收到"错误26:错误定位服务器/实例指定".
相同的应用程序适用于Sql Server 2008的旧数据库实例.我不知道要检查什么以及从哪里开始!
编辑:另一个奇怪的行为是,如果我使用这样的代码,它的效果很好
conn.Open()
dr = cmd.ExecuteReader()
Run Code Online (Sandbox Code Playgroud)
但是,如果我打开一个带有datagridview,数据集和BindingSource的表单,请停止工作!
这篇博文有关于错误26的详细信息.
从帖子:
总之,我们收到此错误消息的原因是客户端堆栈无法从SQL浏览器接收SSRP响应UDP数据包.很容易隔离问题.以下是步骤:
- 确保您的服务器名称正确,例如,名称上没有拼写错误.
- 确保您的实例名称正确,并且目标计算机上确实存在此类实例.[更新:某些应用程序将\转换为\.如果您不确定您的应用程序,请在连接字符串中尝试Server\Instance和Server \\ Instance]
- 确保服务器计算机可以访问,例如,DNS可以正确解析,您可以ping服务器(并非总是如此).
- 确保SQL Browser服务正在服务器上运行.
- 如果在服务器上启用了防火墙,则需要将sqlbrowser.exe和/或UDP端口1434置于异常中.
完成这些步骤后,您不应再看到此错误消息.您可能仍然无法连接SQL服务器,但错误消息应该不同,现在您有不同的问题.[更新:如果仍然失败,您可以使用tcp:server\instance和/或np:server\instance替换server\instance,并查看它是否使用TCP或NP协议成功.这样,您可以稍微隔离一下这个问题.]
| 归档时间: |
|
| 查看次数: |
18485 次 |
| 最近记录: |