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

来源:互联网 发布:python灰帽子 编辑:程序博客网 时间:2024/06/07 20:36

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

项目开发框架: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






阅读全文
0 0
原创粉丝点击