Redisson 连接 Redis 失败 报错解决方案

Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate org.redisson.api.RedissonClient: Factory method 'redisson' threw exception with message: java.util.concurrent.ExecutionException: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: localhost/127.0.0.1:6379

这个异常的核心原因是:Redisson 客户端无法连接到本地 127.0.0.1:6379 的 Redis 服务,Spring 容器创建 RedissonClient Bean 时失败了。

一、报错完整解读

plaintext

Unable to connect to Redis server: localhost/127.0.0.1:6379

Redisson 尝试连接本地 Redis(默认端口 6379)

连接被拒绝 / 无法建立,最终导致 Bean 创建失败

二、最常见的 4 种原因 + 解决方案

  1. Redis 服务根本没启动(90% 的情况)

排查命令:

Windows:打开命令行,执行 redis-cli,如果提示无法连接就是没启动

Linux/Mac:执行 ps -ef | grep redis,无进程则未启动

启动方式:

Windows:双击 redis-server.exe

Linux/Mac:redis-server /etc/redis/redis.conf

  1. Redis 端口不是 6379 / 地址不是本地

如果你的 Redis:

部署在远程服务器(不是localhost)

端口修改为非 6379(比如 6380)

配置了密码

都会导致连接失败。

解决方案:修改 Redisson 配置文件 / 配置类

① YAML 配置(spring-boot-starter-redisson)

yaml

spring:

redis:

redisson:

单节点配置

singleServerConfig:

address: redis://192.168.1.100:6379 # 你的Redis地址

password: yourRedisPassword # 有密码就填,无密码删除此行

database: 0

② Redisson 配置类(手动创建 Bean)

java

运行

@Configuration

public class RedissonConfig {

@Bean

public RedissonClient redisson() {

Config config = new Config();

// 正确配置Redis地址+端口+密码

config.useSingleServer()

.setAddress("redis://192.168.1.100:6379")

.setPassword("yourRedisPassword") // 无密码删除

.setDatabase(0);

return Redisson.create(config);

}

}

  1. Redis 开启了保护模式 / 绑定 IP 限制

Redis 默认配置 bind 127.0.0.1,只允许本地连接,远程无法访问。

解决方案:修改 redis.conf

注释绑定 IP:# bind 127.0.0.1

关闭保护模式:protected-mode no

重启 Redis 服务

  1. 防火墙 / 安全组拦截了 6379 端口

本地 Windows:关闭防火墙 或 放行 6379 端口

远程服务器(阿里云 / 腾讯云):安全组开放 6379 端口

Linux:执行 firewall-cmd --add-port=6379/tcp --permanent 放行端口

三、快速验证 Redis 是否可连接

执行命令,直接测试连通性:

bash

redis-cli -h 你的Redis地址 -p 端口 -a 密码

示例:redis-cli -h 127.0.0.1 -p 6379

如果能进入 redis> 命令行,说明 Redis 正常,问题出在 Redisson 配置;

如果依然连接失败,说明 Redis 服务 / 网络有问题。

总结

优先检查:Redis 服务是否启动

其次核对:Redisson 配置的地址、端口、密码是否正确

最后排查:防火墙 / 保护模式限制

按照这个顺序排查,100% 能解决这个连接异常。

相关推荐
学编程就要猛1 小时前
Spring AI Alibaba(上)
java·人工智能·spring·springaialibaba
jimy11 小时前
c++的静态类型和动态类型(二)
开发语言·c++
吠品1 小时前
箭头函数为什么不能 new
开发语言·javascript·原型模式
谢亮_vipxieliang2 小时前
PHP 8 新特性:构造器属性提升与实战
开发语言·后端·php
imDwAaY2 小时前
Spring Boot的核心配置文件一览及其加载顺序
java·spring boot·后端
zhangx1234_2 小时前
javaEE 多线程1
java·linux·服务器
鬼手点金2 小时前
opencode-crawl4ai使用建议
java·开发语言·人工智能·python·机器学习
专业程序开发源2 小时前
springboot校园志愿者管理系统28562-计算机课程设计、毕业设计
java·spring boot·后端·python·django·php·课程设计
thefool1122662 小时前
多线程 2
java