【发布时间】:2017-11-22 02:45:23
【问题描述】:
我有 SQL Server 2016 Express 和 Visual Studio 2015 社区。在 SQL Server 管理工作室中,我可以访问 SQL Server 并创建数据库、表等。当我尝试从 VS 添加到数据库的连接时,我可以看到服务器名称(我的计算机的名称)但是当我单击“测试连接”报错
" 建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。 服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。 (提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)(Microsoft SQL Server,错误:1326)"
我已经进入 SQL 服务器配置管理器并启用了命名管道和 TCP/IP,我已经尝试关闭防火墙,我已经卸载并重新安装了 Visual Studio 和 SQL 服务器,我已经删除了 SQLAGENT.OUT 和我已经把它关掉然后再打开。在计算机管理中,我注意到“SQL 服务器代理(SQLEXPRESS)”已停止并且不会启动,当我尝试启动它时它超时并且事件查看器说 “无法启动 SQLServerAgent(原因:此 SQL Server 代理安装已禁用。安装此服务的 SQL Server 版本不支持 SQL Server 代理。)。”
我已经检查了 SQL Server 服务,它正在使用 NT 服务\MSSQL$SQLEXPRESS 帐户登录。数据库登录列表中的相应条目具有“public”和“sysadmin”的服务器权限
这就是我可以通过 Google 找到的所有内容,还有其他想法吗? 谢谢
【问题讨论】:
-
要连接的实例名称是
.\SQLEXPRESS。你在VS中使用它吗? (SQL Server 代理不会在 Express 上运行,这是正常的,无需担心。) -
请注意,如果您不与多个用户共享实例,则更简单的替代方法是使用 LocalDB。
(localdb)\MSSqlLocalDB的默认实例是开箱即用的。 -
“服务器名称”是“(计算机名称)”,这是下拉列表中的唯一选项,所以我愚蠢地相信它,使用“.\SQLEXPRESS”代替显示所有数据库和“测试连接”作品。当我尝试连接时,我收到错误“无法添加数据连接无法加载文件或程序集 Microsoft.SqlServer.Management.Sdk.Sfc,Version=12.0.0.0,Culture=neutral, PublicKeyToken=89845dcd8080cc91 或其依赖项之一”每次我通过障碍时都会出现另一个:) 感谢您的帮助。