蘑菇博客部署-SpringBoot启动报错:Too many connections

文章讲述了在启动SpringBoot微服务项目时遇到Toomanyconnections错误,解决方法包括调整Nacos的微服务配置减小最大连接数,以及在MySQL数据库中增加最大连接数。

蘑菇博客启动SpringBoot微服务项目时报错:Data source rejected establishment of connection, message from server: “Too many connections”

解决方案有两个:
1、找到nacos对应的微服务配置,调小最大连接数,如下图所示:
在这里插入图片描述
2、调大数据库本身最大连接数限制。
在数据库(以mysql为例)中输入一下命令:

show variables like "max_connections"; //显示最大连接数
show processlist ;//显示当前连接数
set global max_connections=1000//设置最大连接数1000

在这里插入图片描述

### Spring Boot 数据库连接池配置 Too Many Connections 解决方案 当遇到 `Too many connections` 错误时,表明应用程序尝试打开的数据库连接数目超出了 MySQL 配置允许的最大值。对于使用 Spring Boot 的应用来说,这通常是因为 Tomcat 连接池或 HikariCP 默认配置不当造成的。 #### 修改 MySQL 最大连接数 为了防止因数据库连接过多而导致的问题,可以通过调整 MySQL 的最大连接数来缓解这一状况: ```sql SET GLOBAL max_connections = 500; ``` 上述命令会临时更改服务器上的最大并发连接数至500个;要永久生效,则需编辑MySQL配置文件(通常是my.cnf),并重启服务[^2]。 #### 调整 Spring Boot 应用中的数据源属性 针对 Spring Boot 中使用的 Tomcat 或者 HikariCP 连接池,可以在 application.properties 文件内指定更合理的参数以优化性能表现: ##### 对于 Tomcat Pool: ```properties spring.datasource.tomcat.max-active=100 spring.datasource.tomcat.initial-size=10 spring.datasource.tomcat.min-idle=10 spring.datasource.tomcat.max-wait=-1 ``` 这些设置控制着活动连接的数量上限(`max-active`)、启动时创建的初始连接数量(`initial-size`)以及保持空闲状态下的最小连接量(`min-idle`)等重要方面[^1]。 ##### 如果采用的是HikariCP作为默认实现的话: ```properties spring.datasource.hikari.maximumPoolSize=100 spring.datasource.hikari.minimumIdle=10 ``` 这里同样设置了最大的活跃连接数 (`maximumPoolSize`) 和最低闲置连接数 (`minimumIdle`). 特别注意,在某些情况下,默认的最小空闲连接数值可能过高(如提到的例子中为160),应适当降低这个值以避免不必要的资源占用. #### 单元测试环境特殊处理 考虑到带有@SpringBootTest 注解的集成测试可能会频繁触发新的上下文加载过程从而重复初始化多个独立的数据源实例,建议采取措施确保每次运行结束后都能正确清理掉不再需要的对象引用,比如利用 @DirtiesContext 来标记哪些组件应该被重置或是销毁。另外也可以考虑改写成基于Mockito或其他mock工具构建起来的纯内存级模拟场景来进行逻辑验证工作[^3]. 最后值得注意的一点是在实际生产环境中应当密切监控数据库的实际负载情况,并据此动态调整相关参数设定,确保系统稳定性和响应速度达到最佳平衡。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值