在用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>
进入redis-config
1.修改 protected-mode yes 改为:protected-mode no(关闭保护模式)
2.注释掉 #bin 127.0.0.
3.后台启动daemonize 改为yes4.开启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
打开我们的阿里云服务器
发现原来我们虽然在虚拟机上开放了6379端口,但是在我们的云服务器上并没有开放6379端口
手动添加后重新测试
测试成功了~
要记得不光在虚拟机上开放端口,在我们的云服务器上也要开放6379端口