跨域运行来自C#应用程序的SQL脚本

Sar*_* AR 5 c# sql-server-2008-r2

要从我的C#应用​​程序运行sql脚本文件,我提到了这一点. http://social.msdn.microsoft.com/Forums/en/adodotnetdataproviders/thread/43e8bc3a-1132-453b-b950-09427e970f31

当我的机器和数据库服务器在同一个域中时,它可以正常工作.我现在的问题是,我正在从一台机器上执行这个控制台应用程序(名称:X,用户ID:abc,域D1).SQL服务器在另一台机器上(名称:Y,域:D2).我使用VPN连接到用户ID为'abc'的机器Y,并在远程桌面上处理SQL.我如何跨域运行SQL脚本?我在我的TFS构建模板中的自定义活动中使用它作为在域D2中的目标数据库中运行脚本的最后一步.

我收到此错误:"建立与SQL Server的连接时发生网络相关或特定于实例的错误.未找到服务器或无法访问服务器.验证实例名称是否正确以及SQL Server是否配置为允许远程连接.(提供程序:SQL网络接口,错误:26 - 错误定位指定的服务器/实例)"

是否可以使用域D2中的机器Y的管理员用户ID连接到数据库?

小智 1

这不是用户凭据问题。你会得到一个不同的错误。看来您的客户端计算机实际上无法访问服务器\实例。

尝试 ping 服务器。如果您得到答复,那么我会考虑其他一些事情。首先,如果这是命名实例,那么您需要确保 SQL Server Browser 服务已启动。还要确保 SQL Server 服务的协议已启用 TCP/IP。当您在连接到实例的本地计算机上时,您可以使用共享内存。但远程它利用(或尝试使用)TCP/IP。

检查完这些事情后告诉我你在哪里。