SQLServerException;与主机localhost,端口1433的TCP / IP连接失败

时间:2016-08-09 20:20:18

标签: sql-server

使用此连接字符串

jdbc:sqlserver://localhost\\SQLEXPRESS:1433;database=mydb;user=username;password=psw

我收到以下错误,我无法弄清楚如何解决它:

  

com.microsoft.sqlserver.jdbc.SQLServerException:与主机localhost,端口1433的TCP / IP连接失败。错误:“连接被拒绝:连接。验证连接属性,检查主机上是否正在运行SQL Server实例并接受端口上的TCP / IP连接,并且没有防火墙阻止与端口的TCP连接。

我查看了注册表HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\<Instance Name>\MSSQLServer\SuperSocketNetLib\Tcp,端口已设置,防火墙已禁用,实例正在运行且用户确实具有主默认访问权限!,那么出了什么问题?

3 个答案:

答案 0 :(得分:2)

尝试此连接字符串

jdbc:sqlserver://localhost;instanceName=SQLEXPRESS;database=mydb;user=username;‌​password=psw'

并确保你有这个

instanceName = SQLEXPRESS;
database = mydb;  -- database mydb should exists
user = userName;‌ -- user should exits and have permission to mydb
​password = userPassword

创建新用户

USE [master]
GO
CREATE LOGIN [userName] WITH PASSWORD=N'userPassword', 
             DEFAULT_DATABASE=[YourDB], CHECK_EXPIRATION=OFF,CHECK_POLICY=OFF

允许访问YourDB

GO
USE [YourDB] -- in your case its mydb
GO
CREATE USER [userName] FOR LOGIN [userName] WITH DEFAULT_SCHEMA=[dbo]
GO

答案 1 :(得分:1)

转到SQL Server配置管理器->> SQLEXPRESS的协议 在右侧选项卡中,更改TCP / IP的属性 1-启用协议 2-在IP地址处:确保所有TCP端口均为1433 3-申请->>确定 4-重新启动SQL Server

我希望它能正常工作

答案 2 :(得分:0)

尝试省略端口号,或使用逗号代替冒号。

jdbc:sqlserver://localhost\\SQLEXPRESS;database=mydb;user=username;password=psw

jdbc:sqlserver://localhost\\SQLEXPRESS,1433;database=mydb;user=username;password=psw