java.net.ConnectException: Connection refused: connect已解决

文章讲述了在将SpringBoot应用与RabbitMQ集成时遇到的连接问题,分析了配置错误(默认只允许本地连接),并提供了从配置调整(使用root用户和远程访问)、到Eureka服务注册的解决方案。

🥚今日鸡汤🥚

        要有最朴素的生活和最遥远的梦想,即使明天天寒地冻,山高水远,路远马亡。

                                                                                                                      —— 《枫》

遇见问题莫着急,着急也没用~😶‍🌫️

目录

🧂1.令人发麻的问题

🥞2.思路分析 

🥓3.进入白热化 

🧇4.全方位瓦解对手


1.令人发麻的问题

在Stream整合Rabbitmq时,爆下面错误:

java.net.ConnectException: Connection refused: connect


org.springframework.amqp.AmqpConnectException: java.net.ConnectException: Connection refused: connect
	at org.springframework.amqp.rabbit.support.RabbitExceptionTranslator.convertRabbitAccessException(RabbitExceptionTranslator.java:62) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.amqp.rabbit.connection.AbstractConnectionFactory.createBareConnection(AbstractConnectionFactory.java:510) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.amqp.rabbit.connection.CachingConnectionFactory.createConnection(CachingConnectionFactory.java:751) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.amqp.rabbit.connection.ConnectionFactoryUtils.createConnection(ConnectionFactoryUtils.java:215) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.amqp.rabbit.core.RabbitTemplate.doExecute(RabbitTemplate.java:2085) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:2058) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.amqp.rabbit.core.RabbitTemplate.execute(RabbitTemplate.java:2038) ~[spring-rabbit-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.amqp.RabbitHealthIndicator.getVersion(RabbitHealthIndicator.java:49) ~[spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.amqp.RabbitHealthIndicator.doHealthCheck(RabbitHealthIndicator.java:44) ~[spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.health.AbstractHealthIndicator.health(AbstractHealthIndicator.java:82) ~[spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.health.HealthIndicator.getHealth(HealthIndicator.java:37) [spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.health.HealthEndpoint.getHealth(HealthEndpoint.java:81) [spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.health.HealthEndpoint.getHealth(HealthEndpoint.java:38) [spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at org.springframework.boot.actuate.health.HealthEndpointSupport.getContribution(HealthEndpointSupport.java:108) [spring-boot-actuator-2.2.2.RELEASE.jar:2.2.2.RELEASE]
	at
### Java MySQL `java.net.ConnectException: Connection refused` 解决方案 当遇到 `java.net.ConnectException: Connection refused` 错误时,通常意味着客户端尝试连接到指定端口上的服务未成功建立连接。对于MySQL数据库而言,此错误可能由多种因素引起。 #### 1. 检查MySQL服务器状态和服务配置 确认MySQL服务器正在运行,并监听正确的IP地址和端口号。可以通过命令行工具或管理界面查看MySQL的服务状态以及其网络设置[^1]。 如果是在Kubernetes集群环境中,则需特别注意节点间的通信状况。即使能够通过ICMP协议(如ping)到达目标主机,也不能保证TCP层面的连通性良好;因此还需要测试具体的应用层端口是否可达,比如使用telnet或其他类似的工具来验证3308端口的状态[^3]。 #### 2. 修改防火墙规则 确保操作系统级别的防火墙允许外部访问MySQL所使用的端口,默认情况下为3306而非题目中的3308,请根据实际情况调整。如果是云平台部署的话,还需检查安全组策略是否开放相应入站流量。 #### 3. 数据库权限设定 核查用户账户是否有足够的权限从特定位置登录并操作所需的数据库实例。可通过执行SQL语句授予适当权限给对应账号: ```sql GRANT ALL PRIVILEGES ON *.* TO 'yourusername'@'%' IDENTIFIED BY 'password'; FLUSH PRIVILEGES; ``` 上述命令会赋予全局范围内的完全控制权,实际应用中应依据需求精细化分配最小化授权原则下的必要权限集。 #### 4. 应用程序连接字符串校验 最后但同样重要的是要仔细核对应用程序内部定义的数据源URL参数准确性,包括但不限于host、port、database name等字段值是否匹配真实环境配置。另外还要留意JDBC驱动版本兼容性和CLASSPATH路径下是否存在冲突类文件等问题[^2]。 综上所述,在排查此类问题的过程中应当采取循序渐进的方式逐步排除潜在隐患直至找到根本原因所在。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

会敲代码的小张

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值