问题
用java代码连接sqlserver数据库失败,提示:用户 ‘sa’ 登录失败。
Navicat连接正常如图:
而且正式数据库java代码连接也正常,测试数据库就报错,
com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。
如图:
上网百度,看到千篇一律的解决方案,就是修改Windows身份验证模式如图:
检查后发现已经是如图所示的配置了,一度尝试了很长时间却无果。
最后的最后发现:正式数据库用的是默认端口1433,测试数据库却用的别的端口号,端口号不一致,但是报错却是登陆失败。
解决方案
既然是端口号错了,那么就要将配置文件的连接代码改掉,假设端口号为51472:
spring.datasource.druid.driver=com.microsoft.jdbc.sqlserver.SQLServerDriver
spring.datasource.druid.jdbc-url=jdbc:sqlserver://localhost:51472;DatabaseName=master
spring.datasource.druid.username=sa
spring.datasource.druid.password=123456
如何查看sqlserver数据库端口号(Navicat)
查询语句:
exec sys.sp_readerrorlog 0, 1, 'listening'
最后的最后,如果我的文章帮到了你,拜托拜托给个赞吧~~