我无法通过IP地址连接到服务器SQL数据库


45

我已经安装了运行Windows Server 2008的服务器,并安装了SQL Server 2008 Express。

我可以通过连接到计算机的SQL Server Express数据库MACHINENAME/SQLEXPRESS

但是,当我们使用IP地址通过任何软件或脚本进行连接时,将不允许连接。

我努力了:

  • 关闭防火墙。
  • 允许SQL数据库的远程连接。
  • 在“ SQL配置”中启用TCP / IP。

当我们尝试通过软件“ SQL Server Management Studio”进行连接时,会收到以下消息:

错误信息:

建立与服务器的连接时发生错误。连接到SQL Server 2005时,此故障可能是由于以下事实导致的:在默认设置下,SQL Server不允许远程连接。(提供程序:TCP提供程序,错误:0-无法建立连接,因为目标计算机主动拒绝了它。)(Microsoft SQL Server,错误:10061)

已成功与服务器建立连接,但是在登录过程中发生了错误。(提供程序:TCP提供程序,错误:0-主机中的软件中止了已建立的连接。)(Microsoft SQL Server,错误:10053)

您能否在空闲时间让我知道,以便我们看看,因为我似乎已经知道在哪里,所以我根据UK Fast发送给我的一些信息修改了详细信息,但他们说“不在支持范围内” ,因此他们无济于事。

我期待着您的回音。


连接时是否尝试附加端口号?

您是要连接到“ 192.168.0.1/SQLEXPRESS”(其中192.168.0.1实际上是服务器的 IP地址),还是要省略实例名称?
罗兰·肖

2
您是否真的使用正斜杠/而不是反斜杠“ \”?
亚伦·伯特兰

Answers:


78

您的SQL Server是作为命名实例安装的,因此首先尝试使用以下服务器名称连接到服务器:IP Address\SQLEXPRESS
当您将SQL Server安装为命名实例时,默认情况下它使用动态TCP / IP端口,因此无法指定实例名称(仅IP地址)连接到它。如果需要在不使用实例名称的情况下连接到服务器,则必须将服务器重新配置为使用静态TCP端口。为此,请执行以下操作:

  1. 打开SQL Server配置管理器;
  2. 切换到SQL Server Network Configuration | Protocols for SQLEXPRESS;
  3. 双击TCP/IP协议;
  4. YesEnabled字段中选择值;
  5. 切换至IP Addresses标签页;
  6. 找到IPAll部分;
  7. 清除该TCP Dynamic Ports部分中的字段;
  8. 1433TCP Port字段中指定值:
    在此处输入图片说明
  9. 重新启动服务器
    尝试仅使用其IP地址连接到服务器。

7
感谢您提供该信息,除了一件事之外,它工作正常。在sql management studio中,我仍然必须提供连接服务器的端口,例如xxxx \ instance,1433。我认为这很奇怪,因为我使用的是标准端口。
Tomas Jansson 2014年

1
它对我有用,除了与@TomasJansson所报告的相反:它在Management Studio中工作,没有端口号,但是即使在使用默认端口(1433)的情况下,我也必须在连接字符串中指定一个。
lpacheco

除了上面的出色回答外,在SQL Server 2017中,我意识到您不能将用户(尤其是sa)密码字段留空。确保您已设置密码-否则它将无法连接。
aLearner's

使用netstat -a -b并找到sqlservr.exe,并确保端口为1433。并非总是如此。否则你会发疯的。
jwize

8

您应该为我启用,通过启用以下服务并重新启动所有服务来解决此问题。

  • 共享内存
  • TCP / IP
  • 命名管道

SQL Server配置命名管道


8

除上述答案外,使用SQL Server Express 2017时,尝试使用端口进行连接时,请确保使用逗号语法而不是冒号语法,即:

 MyServerName,1433\InstanceName

经过以上几个小时的努力,遵循了所有建议,但仍然无法连接,我改用了上面的方法,它立即通过SQL Server Management Studio进行了远程连接。成功的第一步。


1
这对我来说是固定的(在服务器名称和实例名称之间移动端口)。最后输入端口无效。
masospaghetti

1

我可以通过显式指定动态端口号进行远程连接,但是,这显然不是理想的选择。

我似乎出现的问题是SQL Server浏览器服务已禁用。启用并启动此服务后,只需指定主机名和实例名,就可以远程连接。


0

只是添加之前所说的内容。我遇到了无法连接服务器(同一台台式机上的客户端和服务器)的同样问题,并且我尝试了此处列出的所有步骤来尝试修复它。但是,我最终发现了问题所在。我要做的就是进入SQL Server Management Studio,然后单击“ SQL Server Services”,然后单击我需要连接的服务器。然后点击绿色的“运行”按钮。我不确定这是否特定于我,因为我的计算机正在运行并正在访问服务器,希望它能对其他人有所帮助!

运行/开始按钮在哪里


1
这个评论到底怎么被低估了?简单并解决了我的问题
Cavid Hummatov '18
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.