JDBC连接SQL Server访问出错
报错一:com.microsoft.sqlserver.jdbc.SQLServerException: 用户 ‘sa’ 登录失败
1、问题:
通过用户名sa
连接SQL Server
数据库报错。
2、报错信息:
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。 ClientConnectionId:c21ee6ce-53fa-4e75-af98-04460287ad7f
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDatabaseError(SQLServerException.java:217)
at com.microsoft.sqlserver.jdbc.TDSTokenHandler.onEOF(tdsparser.java:279)
at com.microsoft.sqlserver.jdbc.TDSParser.parse(tdsparser.java:99)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.sendLogon(SQLServerConnection.java:4346)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.logon(SQLServerConnection.java:3160)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.access$100(SQLServerConnection.java:43)
at com.microsoft.sqlserver.jdbc.SQLServerConnection$LogonCommand.doExecute(SQLServerConnection.java:3123)
at com.microsoft.sqlserver.jdbc.TDSCommand.execute(IOBuffer.java:7505)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.executeCommand(SQLServerConnection.java:2445)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1981)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at cn.hestyle.test.Test01.<clinit>(Test01.java:21)
Exception in thread "main" java.lang.NullPointerException
at cn.hestyle.test.Test01.main(Test01.java:30)
3、解决办法
注 意 : 修 改 ‘ S Q L S e r v e r ‘ 配 置 都 需 要 重 启 一 下 ‘ S Q L S e r v e r ‘ 服 务 \color{red}注意:修改`SQL Server`配置都需要重启一下`SQL Server`服务 注意:修改‘SQLServer‘配置都需要重启一下‘SQLServer‘服务
重启SQL Server
服务方法
①、 检 查 用 户 名 、 密 码 是 否 填 写 正 确 \color{red}检查用户名、密码是否填写正确 检查用户名、密码是否填写正确
②、检查是否开启SQL Server、Windows身份验证模式
首先以Windows身份验证方式登录SQL Server
选中数据库右击,选择属性
勾选SQL Server
和Windows
身份验证模式。
修
改
后
需
要
重
启
一
下
S
Q
L
S
e
r
v
e
r
服
务
,
方
法
见
前
面
介
绍
。
\color{red}修改后需要重启一下SQL Server服务,方法见前面介绍。
修改后需要重启一下SQLServer服务,方法见前面介绍。
③、检查是否开启SQL Server Browser
服务
打开服务
报错二、com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“connect timed out。请验证连接属性。确保 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。
1、问题:
TCP/IP 1433端口连接失败
2、报错信息
com.microsoft.sqlserver.jdbc.SQLServerException: 通过端口 1433 连接到主机 localhost 的 TCP/IP 连接失败。错误:“connect timed out。请验证连接属性。确保 SQL Server 的实例正在主机上运行,且在此端口接受 TCP/IP 连接,还要确保防火墙没有阻止到此端口的 TCP 连接。”。
at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:191)
at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:242)
at com.microsoft.sqlserver.jdbc.SocketFinder.findSocket(IOBuffer.java:2369)
at com.microsoft.sqlserver.jdbc.TDSChannel.open(IOBuffer.java:551)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1963)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1628)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1459)
at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:773)
at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1168)
at java.sql.DriverManager.getConnection(DriverManager.java:664)
at java.sql.DriverManager.getConnection(DriverManager.java:247)
at cn.hestyle.test.Test01.<clinit>(Test01.java:21)
Exception in thread "main" java.lang.NullPointerException
at cn.hestyle.test.Test01.main(Test01.java:30)
3、解决方法
①、检查SQL Server 配置的是否为1433端口、以及TCP/IP协议是否启动
在启动菜单中知道SQL Server
配置管理器
修
改
后
需
要
重
启
一
下
S
Q
L
S
e
r
v
e
r
服
务
,
方
法
见
前
面
介
绍
。
\color{red}修改后需要重启一下SQL Server服务,方法见前面介绍。
修改后需要重启一下SQLServer服务,方法见前面介绍。
检查了一下午,翻了百度几次。。。很多博客说是防火墙的问题,经过测试,连接本地的SQL Server
与端口的防火墙没有关系,连接远程的SQL Server
才需要设置防火墙。
如果你看到这都还不 点 个 赞 、 评 论 一 下 , 祝 你 检 查 上 面 的 配 置 也 解 决 不 了 问 题 ! \color{red}点个赞、评论一下,祝你检查上面的配置也解决不了问题! 点个赞、评论一下,祝你检查上面的配置也解决不了问题!
更多推荐
SQL Server报错com.microsoft.sqlserver.jdbc.SQLServerException:用户'sa'登录失败
发布评论