在使用Spring Boot项目中基于druid来配置postgresql的连接池,会出现一个问题,有时候能正常连接数据库,有时候会抛出如下异常:

init datasource error, url: jdbc:postgresql://192.127.0.1:5432/iecs

org.postgresql.util.PSQLException: 尝试连线已失败。
	at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:297)
	at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:49)
	at org.postgresql.jdbc.PgConnection.<init>(PgConnection.java:211)
	at org.postgresql.Driver.makeConnection(Driver.java:459)
	at org.postgresql.Driver.connect(Driver.java:261)
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:156)
	at com.alibaba.druid.filter.FilterAdapter.connection_connect(FilterAdapter.java:786)
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:150)
	at com.alibaba.druid.filter.stat.StatFilter.connection_connect(StatFilter.java:218)
	at com.alibaba.druid.filter.FilterChainImpl.connection_connect(FilterChainImpl.java:150)

特别是多个项目同时启动时,这种情况出现的概率特别大。排查了很久发现是连接池配置过大导致postgresql的连接数不够用

针对此问题有两种解决方案:第一,如果是测试环境则将连接池数据减小即可;第二:如果是生产环境或业务所需则修改postgresql的连接池大小。

关于如何查看及修改postgresql的连接数,可参考文章《POSTGRESQL查看及设置连接数



springboot druid postgresql 链接异常org.postgresql.util.PSQLException: 尝试连线已失败插图

关注公众号:程序新视界,一个让你软实力、硬技术同步提升的平台

除非注明,否则均为程序新视界原创文章,转载必须以链接形式标明本文链接

本文链接:http://choupangxia.com/2020/06/30/springboot-druid-postgresql-psqlexception/