Sql server 2012 为SQL Server Express 2012启用远程连接
我刚刚在我的家庭服务器上安装了SQL Server Express 2012。我正试图从我的桌面PC从Visual Studio 2012连接到它,并反复出现众所周知的错误: 建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。(提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接) 我为解决此问题所做的努力:Sql server 2012 为SQL Server Express 2012启用远程连接,sql-server-2012,remote-connection,sql-server-2012-express,Sql Server 2012,Remote Connection,Sql Server 2012 Express,我刚刚在我的家庭服务器上安装了SQL Server Express 2012。我正试图从我的桌面PC从Visual Studio 2012连接到它,并反复出现众所周知的错误: 建立与SQL Server的连接时发生与网络相关或特定于实例的错误。找不到服务器或无法访问服务器。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。(提供程序:命名管道提供程序,错误:40-无法打开到SQL Server的连接) 我为解决此问题所做的努力: 在服务器上运行SQL Server Conf
- 在服务器上运行SQL Server Configuration Manager并启用SQL Server浏览器
- 在服务器上为TCP、本地子网上的端口1433和1434添加Windows防火墙例外
- 验证我在桌面上登录的用户是否登录了SQL Server实例
- 验证我正在SQL Server实例上使用Windows身份验证
- 反复重新启动SQL Server和整个dang服务器
- 把我的头发都拔出来
在我安装的SQL Server 2012 Developer Edition(使用默认设置安装)上,我只需加载SQL Server配置管理器->SQL Server网络配置->MSSQLSERVER协议,并将TCP/IP从禁用更改为启用。您所需要做的就是打开服务器防火墙上的相关端口。我遇到了一个与目前所有答案不同的问题强> 首先,我应该说我在VisualStudio中使用了它,而不是SQLServerExpress,但解决方案应该完全相同 天啊,这其实很简单,也许有点愚蠢。 当我尝试创建数据库时,VisualStudio建议使用SQL Server的名称,它给了我Windows用户名,因为它实际上是服务器的名称,所以我选择了它 实际上,它实际上是我的Windows用户名+
\SQLEXPRESS
。如果您没有更改任何设置,这可能也是您的设置。如果有效,停止阅读;这是我的答案。如果不起作用,可能名称不同
如果像我一样,您在Visual Studio中仅遇到此问题来检查您的内容,请执行以下步骤:
这是服务器的名称,您应该尝试连接到它!不是VisualStudio所建议的 您可以使用此解决此问题: 转到开始>执行,然后运行CLICONFG.EXE。 命名管道协议将位于列表的第一位。将其降级,然后升级TCP/IP 彻底测试应用程序
我希望这有帮助。连接到远程SQL Server(无需打开UDP端口1434并启用SQL Server浏览器)的正确方法是使用ip和端口,而不是命名实例 使用ip和端口而不是命名实例也更安全,因为它减少了攻击表面积 也许两张图片能说出2000个单词 此方法使用指定的端口(我相信这是大多数人想要的) 此方法需要打开UDP端口1434并运行SQL Server浏览器。
这篇文章帮助我 SQL Server中的所有内容都已配置,我的问题是防火墙阻止了端口1433,我更喜欢“Rosdi Kasim”的方式,因为这不需要在IP上进行详细配置 当我再次尝试启动另一台服务器时,我肯定会再次忘记它 只需启用Sql Server浏览器服务,然后在连接服务器时在IP后面添加\SQLEXPRESS,即可保持简单(KISS) 直接使用没有“\SQLEXPRESS”的IP是我的失败点,因为它不使用默认端口
谢谢。还有一件事… Kyralessa提供了很好的信息,但我还有一件事要补充,即使在这篇文章之后,我还是被难住了 在SQL Server网络配置>服务器协议>TC下