控制台应用程序无法从服务器连接到sql server实例,但可以从本地计算机连接

时间:2012-10-23 13:06:09

标签: c# sql-server sql-server-2008-r2 console-application

我有一些在专用服务器上运行的asp.net Web应用程序..对于其中一个网站,我正在执行维护任务,将所有用户上传的图像升级到新的命名约定。

我写了一个简单的小型控制台应用程序来完成这项工作。我把连接字符串放在我的app.config中,如下所示:

<add key="CS" value="Data Source=1.1.1.1;Initial Catalog=MyDatabase;User ID=usr; Password=pwd" />

当然,这里的细节是虚拟的,它们实际上并不是MyDatabase等...但是我确实使用IP地址连接到sql server

我的所有Web应用程序在web.config文件中具有相同的格式,相同的详细信息,但数据库名称除外。一切都很好。

我可以使用生产数据库从我的本地开发机器运行控制台应用程序,它连接正常,没问题。 (成功运行测试DB上的测试查询)

现在,我需要访问硬盘来重命名文件等...所以我想在服务器上运行这个控制台应用程序..我将应用程序FTP到我的服务器并尝试在那里运行..它出错了说:

A network-related or instance-specific error occurred while establishing
a connection to SQL Server. The server was not found or was not accessible. 
Verify that the instance name is correct and that SQL Server is configured 
to allow remote connections. (provider: SQL Network Interfaces,
error : 26 - Error Locating Server/Instance Specified)

就像我之前提到的,同样的连接从我的开发机器运行正常,这只有在我尝试在服务器中运行控制台应用程序时才会发生..

我试过搜索,但在任何地方找不到类似的案例..尤其是因为我使用相同值的所有Web应用程序都可以正常运行..我是否需要告诉应用程序使用某些东西?

非常感谢

1 个答案:

答案 0 :(得分:1)

Web服务器和数据库服务器是否在同一台计算机上?

无论如何,在Web服务器上打开命令提示符并执行以下操作:

telnet <ip>, 1433

这假设您在标准端口上运行SQL Server,否则会相应更改。

查看您是否可以通过telnet连接到数据库服务器,帮助确定是否存在防火墙/基本连接问题。