Druid连接Ms SQL Server报地址端口被占用错误

今天部署项目遇到一个大坑,调试了一天,最后终于解决。

项目开发框架:spring boot

应用服务器环境:windows server 2012

数据库环境:MS SQL server 2014 端口:1444

连接池:druid

症状:连接数据库报地址端口冲突

com.microsoft.sqlserver.jdbc.SQLServerException: The TCP/IP connection to the host 10.1.12.2, port 1444 has failed. Error: "Address already in use: no further information. Verify the connection properties. Make sure that an instance of SQL Server is running on the host and accepting TCP/IP connections at the port. Make sure that TCP connections to the port are not blocked by a firewall.".
	at com.microsoft.sqlserver.jdbc.SQLServerException.makeFromDriverError(SQLServerException.java:206)
	at com.microsoft.sqlserver.jdbc.SQLServerException.ConvertConnectExceptionToSQLServerException(SQLServerException.java:257)
	at com.microsoft.sqlserver.jdbc.SocketFinder.findSocket(IOBuffer.java:2385)
	at com.microsoft.sqlserver.jdbc.TDSChannel.open(IOBuffer.java:567)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectHelper(SQLServerConnection.java:1955)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.login(SQLServerConnection.java:1616)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connectInternal(SQLServerConnection.java:1447)
	at com.microsoft.sqlserver.jdbc.SQLServerConnection.connect(SQLServerConnection.java:788)
	at com.microsoft.sqlserver.jdbc.SQLServerDriver.connect(SQLServerDriver.java:1187)
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:149)
	at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:786)
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:143)
	at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:218)
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:143)
	at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1466)
	at com.alibaba.druid.pool.DruidAbstractDataSource.createPhysicalConnection(DruidAbstractDataSource.java:1529)
	at com.alibaba.druid.pool.DruidDataSource$CreateConnectionThread.run(DruidDataSource.java:2277)

原因:在某些情况下(说不清什么情况,在开发环境下运行没问题,在生产的云服务器上就报错), Druid连接池的test属性会造成多次连接,使数据库端口堵死

解决方法:

在Druid的配置文件中将test相关属性设为false即可。

如图,将箭头所指值设为false


扫描二维码关注公众号,回复: 2259988 查看本文章





猜你喜欢

转载自blog.csdn.net/softwave/article/details/78334602
今日推荐