无法建立连接,因为目标计算机主动拒绝它 TCP:0 Visual Studio

Posted

技术标签:

【中文标题】无法建立连接,因为目标计算机主动拒绝它 TCP:0 Visual Studio【英文标题】:No connection could be made because the target machine actively refused it TCP:0 Visual Studio 【发布时间】:2016-12-31 00:49:23 【问题描述】:

当我尝试从远程计算机连接到 SQL 时出现此错误

我的防火墙被禁用,我的端口是默认的 1433,并且在 SQL Server 配置管理器中启用,我在路由器上的 IP 也被启用,我没有使用任何防病毒软件

这是我用来从 Visual Studio 连接的代码

  Dim Conn As New SqlClient.SqlConnection("Server=127.0.0.1,1433;" + "Database=Base1;Uid=Admindb;Password=2016")

即使我尝试了不同的代码

Dim cadenaConexion As String
    Dim selectSQL As String
cadenaConexion = "Server=127.0.0.1,1433;" + "Database=Base1;Uid=Admindb;Password=2016"

这是错误

*Consulte el final de este mensaje para obtener más detalles sobre cómo invocar a la depuración Just-In-Time (JIT) en lugar de a este cuadro de diálogo。

************** 例外文本 ************** System.Data.SqlClient.SqlException (0x80131904): Error relacionado con la red o específico de la instancia mientras se establecía una conexión con el servidor SQL Server。 No se encontró el servidor o éste no estaba accessesible。 Compruebe que el nombre de la instancia es Correcto y que SQL Server está configurado para admissionir conexiones remotas。 (提供者:TCP 提供者,错误:0 - No se puede establecer una conexión ya que elequipo de destino denegó expresamente dicha conexión。)---> System.ComponentModel.Win32Exception (0x80004005): No se puede establecer una conexión ya que el equipo de destino denegó expresamente dicha conxión en System.Data.SqlClient.SqlInternalConnection.OnError(SqlException 异常, Boolean breakConnection, Action`1 wrapCloseInAction)*

我不知道该怎么办,SQL 正在监听所有 IP,甚至程序在 ComboBox 中显示要连接的服务器,但它没有连接,我对 IP 服务器进行了 Ping ,它的工作原理,所以我不知道这是什么样的问题,求助PLS!!

【问题讨论】:

数据库服务器是否与您的客户端在同一台计算机上运行? 是的,在同一台计算机上我没有任何问题,它连接完美,但是当我从另一台远程计算机尝试时,它会删除该错误 我不认为 SQL Server Express 默认允许外部连接。那是您使用的版本,对吗? 是正确的,我使用的是 Express 2012,你是对的,它默认不接受,只需从 SQL 属性中修改以允许远程连接,并将 TCP 端口设置为开启SQL SCM,默认端口为1433 你知道,我确实找到了一个对 SQL Server Express 的引用,它被配置为默认情况下只接受来自本地主机的连接,但同一消息来源还说它使用了随机端口号。由于您使用的是常规 1433,我认为您使用的是常规 SQL Server 而不是 Express。 【参考方案1】:

您说您可以从运行服务器的同一台机器连接到 SQL Server,但不能从其他机器连接。

这有两个可能的原因:

    您正在尝试从其他计算机连接到 127.0.0.1 端口 1433。这将不起作用,因为 127.0.0.1 始终 是本地计算机。从远程客户端连接时,您需要指定运行 SQL Server 的机器的 IP 地址或主机名。

    您的 SQL Server 配置为仅侦听 127.0.0.1 接口上的连接,换句话说,它将只接受来自本地计算机的连接。这是用于开发的数据库服务器的常见默认配置,但是,我找不到任何说明 SQL Server 以这种方式配置的文档。

【讨论】:

好吧,SQL 的 IP 是 127.0.0.1,所以我改成了本地机器的 IP,它的工作原理,但它只允许我连接,所以我必须添加一个连接字符串到我的代码,因为我只使用 SQL 客户端连接,我之前只是尝试过这个,我不知道为什么现在它可以工作,但我很感激,所以谢谢!。 很高兴我能帮上忙。 :-) 首先,我尝试使用 SSMS 将我的本地机器与本地 SSAS 连接,我收到错误“无法连接,因为目标机器主动拒绝它 127.0.0.1 :2383”我试过确认 SSAS 中的所有服务都在运行。它们不是,当我尝试启动它们时,我收到错误 1067:“进程意外终止”

以上是关于无法建立连接,因为目标计算机主动拒绝它 TCP:0 Visual Studio的主要内容,如果未能解决你的问题,请参考以下文章

无法建立连接,因为目标计算机主动拒绝它127.0.0.1:3446

PHP Laravel:无法建立连接,因为目标计算机主动拒绝它

无法建立连接,因为目标计算机主动拒绝它127.0.0.1:63591

连接被对方​​拒绝:10061:无法建立连接,因为目标机器主动拒绝它

SocketException:无法建立连接,因为目标机器主动拒绝它 XX.XXX.XX.XXX:443

.NET 4 新的 TCP 客户端无法连接:无法建立连接,因为目标机器主动拒绝它