SpringBoot无法连接redis

SpringBoot连接redis失败解决方法

在用springboot整合redis的过程中发现无法连接到redis,用了网上的解决流程并没有解决问题,最后发现原来是云服务器没有开放端口(光在虚拟机上开放6379端口不行)

这是报错信息

org.springframework.data.redis.RedisConnectionFailureException: 
Unable to connect to Redis; 
nested exception is io.lettuce.core.RedisConnectionException:
Unable to connect to 8.130.29.45:6379

这是配置文件

# Redis服务器地址
spring.redis.host=8.130.29.45 
# Redis服务器连接端口
spring.redis.port=6379
# 连接超时时间(毫秒)
spring.redis.timeout=5000

这是依赖

	    <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-pool2</artifactId>
        </dependency>

SpringBoot无法连接redis

解决方案:

进入redis-config

1.修改 protected-mode yes 改为:protected-mode no(关闭保护模式)

2.注释掉 #bin 127.0.0.

3.后台启动daemonize 改为yesSpringBoot无法连接redis4.开启6379端口号

查看是否开启
firewall-cmd --zone=public --query-port=6379/tcp
[root@iZ0jlb0dvaeqvxytgqq4a8Z ~]# firewall-cmd --zone=public --query-port=6379/tcp
yes

如果为no则打开

开启命令
[root@bogon bin]# firewall-cmd --zone=public --add-port=6379/tcp --permanent 
重载
[root@bogon bin]# firewall-cmd --reload  
重新查看
firewall-cmd --zone=public --query-port=6379/tcp

5.做完以上记得重启redis

重新测试
结果还是不尽人意,还是无法连接我们的公网ip
打开我们的阿里云服务器
SpringBoot无法连接redis
发现原来我们虽然在虚拟机上开放了6379端口,但是在我们的云服务器上并没有开放6379端口

手动添加后重新测试
SpringBoot无法连接redis
测试成功了~
SpringBoot无法连接redis

总结:

要记得不光在虚拟机上开放端口,在我们的云服务器上也要开放6379端口

上一篇:redis常用命令


下一篇:微服务(四)-Redis、Ribbon、会话保持