我刚刚下载了最新版本的SQL Express 2012,但我无法连接到本地主机。 我尝试了localhost\SQLExpress和Windows身份验证,但它给出了一个错误信息,说无法连接。 我错过了什么吗? 我以前使用过SQL Server 2008,从来没有连接到本地主机的问题。 它似乎连找不到它。另外,在服务中我只看到了SQL Server VSS Writer。 是这样应该的吗? 还是我错过了什么? 谢谢
我刚刚下载了最新版本的SQL Express 2012,但我无法连接到本地主机。 我尝试了localhost\SQLExpress和Windows身份验证,但它给出了一个错误信息,说无法连接。 我错过了什么吗? 我以前使用过SQL Server 2008,从来没有连接到本地主机的问题。 它似乎连找不到它。另外,在服务中我只看到了SQL Server VSS Writer。 是这样应该的吗? 还是我错过了什么? 谢谢
您需要验证 SQL Server 服务是否正在运行。您可以通过转到 开始>控制面板>管理工具>服务
,并检查服务 SQL Server (SQLEXPRESS
) 是否正在运行来执行此操作。如果没有,请启动它。
在您打开服务 applet 后,还要确保服务SQL Browser已启动。如果没有,请启动它。
您需要确保 SQL Server 可以使用 TCP/IP 或命名管道。您可以通过在开始>程序>Microsoft SQL Server 2012>配置工具
(或SQL Server Configuration Manager
)中打开 SQL Server 配置管理器,并确保启用了 TCP/IP 和命名管道来启用它们。如果在“开始”菜单中找不到 SQL Server 配置管理器,则可以手动启动 MMC 快照。根据您的版本,检查SQL Server 配置管理器以获取快照的路径。
确认 SQL Server 连接的身份验证模式与您的连接字符串匹配:
如果您正在使用用户名和密码进行连接,则需要配置 SQL Server 接受“SQL Server 身份验证模式”:
-- YOU MUST RESTART YOUR SQL SERVER AFTER RUNNING THIS!
USE [master]
GO
DECLARE @SqlServerAndWindowsAuthenticationMode INT = 2;
EXEC xp_instance_regwrite
N'HKEY_LOCAL_MACHINE',
N'Software\Microsoft\MSSQLServer\MSSQLServer',
N'LoginMode',
REG_DWORD,
@SqlServerAndWindowsAuthenticationMode;
GO
如果你是使用"Integrated Security=true"(Windows模式)进行连接,并且在Web应用程序中调试时出现此错误,则需要将ApplicationPoolIdentity添加为SQL Server登录,具体方法请参考如何将ApplicationPoolIdentity添加到SQL Server登录中。开始 -> 运行 -> Services.msc
。如果服务未运行,则说明可能没有正确安装所有必要的组件。请启动安装文件并选择“新安装或向现有安装添加功能”选项,然后确保数据库引擎服务被安装。转到开始->程序->Microsoft SQL ServerYYYY->配置工具->SQL Server YYYY配置管理器或运行"SQLServerManager12.msc"。
确保在客户端协议下启用了TCP/IP。
然后进入"SQL Server网络配置",双击TCP/IP。单击"IP地址"选项卡并向下滚动。如果"IP All"下存在TCP动态端口,请删除它,并将TCP端口设置为1433。单击"确定",然后返回到"SQL Server服务"并重新启动SQL Server实例。现在您可以通过localhost连接,至少我可以。
请注意,当从其他应用程序连接时,此错误也可能发生。例如一个正常的C# web应用程序的Web.config连接字符串:
<connectionStrings>
<add name="DefaultConnection" connectionString="server=localhost;database=myDb;uid=myUser;password=myPass;" />
</connectionStrings>
在SQL SERVER EXPRESS 2012中,您应该使用"(localdb)\MSSQLLocalDB"作为数据源名称,例如,您可以使用这样的连接字符串:
Data Source=(localdb)\MSSQLLocalDB;Initial Catalog=master;Integrated Security=True;
首先尝试使用Ravindra Bagale提供的最受欢迎的解决方案。
如果您从本地主机连接到数据库仍然失败,并出现类似以下错误:
无法连接到SQL Server数据库。 错误:TCP/IP连接到主机[IP地址],端口1433失败。错误:“连接被拒绝: 连接。验证连接属性。确保SQL Server实例在主机上运行,并正在接受端口的TCP/IP连接。确保防火墙不会阻止对端口的TCP连接。”
尝试从Windows身份验证切换到混合模式
.\
。我只指定了实例的名称:
SQL2016
.\SQL2016