学习redis一段时间了,现在开始使用springboot整合redis,实现Java与redis数据库的连接与一系列的使用。

但刚开始就给我来了个下马威,直接寄,连接不上redis,在swagger的报错如下:

Unable to connect to Redis; nested exception is org.springframework.data.redis.connection.PoolException: Could not get a resource from the pool; nested exception is io.lettuce.core.RedisConnectionException: Unable to connect to localhost:6379\r\n\tat

我连夜写邮件给阳哥(bushi

阳哥人很好,很快就给回信儿了:

经过排查,定位到了错误点:主机与虚拟机不互通

但是很奇怪,虚拟机能ping通主机,但是主机ping不通虚拟机。。。

我十分疑惑也很震惊(无知给人带来的惊愕

于是开始苦苦搜寻解决之道,原来是虚拟机的网络配置问题

一般虚拟机都会提供了三种网络工作模式,分别是:

Bridged(桥接模式):实现虚拟机在真实的网络上;

NAT(网络地址转换模式):实现虚拟机隐藏在物理机之后,能上网,但不能访问物理机;

Host-Only(仅主机模式):实现虚拟机隐藏在物理机之后,不能上网,但可以访问物理机;

这三种模式的具体区别参考:https://zhuanlan.zhihu.com/p/403513377

我的虚拟机一开始是NAT模式,这就印证了为什么我的主机不能ping虚拟机但是虚拟机能ping通主机

所以,如要是主机和虚拟机要互通,需要把虚拟机转换为桥接模式,操作过程如下(virtualbox):

界面名称:读取本机网络连接中的网卡信息,当前本机连接的什么网络就选择哪张网卡。



然后启动虚拟机,关闭防火墙:

查看防火墙状态:firewall-cmd --state
关闭防火墙:systemctl stop firewalld
开启防火墙:systemctl start firewalld

打开网卡配置文件,注意要先进入root模式(su)

cd /etc/sysconfig/network-scripts/
vi ifcfg-enp0s3



修改配置文件:

BOOTPROTO=static
ONBOOT=yes IPADDR=(设置与主机ip同网段的地址)
GATEWAY=(设置与主机网络相同的网关)



然后重启网络,跟着网上的教程走service network restart,报错了。。。



再次网上冲浪寻找答案后发现

原因是由于 centos8 已经替换了原来的network, 新版的叫:NetworkManager

所以用这个命令就可以重启了 systemctl restart NetworkManager

这个命令成功后,我以为完事了,但是我再ifconfig查看网关配置发现ip根本没有改变。。。

这个时候我心如死灰,以为前面的都是白做了,不过是徒劳。。。

想把全部东西都X掉,然后去睡一觉,但是又不甘心。。。

瞎聊一下:有个名词叫沉没成本,我也是不久前了解的,大概意思就是,你投入的成本已经无法取回了,你就会舍不得放弃,你会近乎痴迷地想要继续下去,

但是,你知道的,你不能因为投了两元币就不下车,当然这只是一个比喻,你的投入何止是两元币,但是这个世界上我们无能为力的事情太多了,

仅凭一人的努力能做到的事情也太有限了。。。所以,该放就得放,学会断舍离。

好吧,这个东西和我今天要做的没啥关系(狗头

但是我就是想把它搞好,把redis连接上,于是我去请教了老师,老师一针见血

sudo ifdown enp0s3
sudo ifup enp0s3

终于!!!ip改成功了!!!

我还是有点忐忑,万一改好了还是连不上咋办,我马上主机和虚拟机互ping,ok,通了!

我赶紧运行springboot,又被泼一身冷水。。。连接失败。。。

这时候真有点绷不住了,但是!!!仔细一看报错信息:

原来忘记改ip了!刚刚在虚拟机改了ip,springboot项目也要把ip改过来



修改配置文件:



启动redis服务器:



然后再启动springboot项目,成功!!!





启动redis客户端查询后,能看到数据也成功写入!

okay,终于是连上了,学习redis的“里程碑式”的成功!哈哈哈哈

一波三折,留下这篇,记录点滴,启示他人。

SpringBoot连接Redis失败报错:Unable to connect to Redis; (小白篇)的更多相关文章

  1. redis启动报错Could not connect to Redis at 127.0.0.1:6379: 由于目标计算机积极拒绝,无法连接。

    报错内容 解决办法 启动redis-server服务 测试 连接成功

  2. 关于springboot 连接mysql 数据库报错问题

    springboot连接MySQL运行报错: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more ...

  3. CentOS7图形界面启动报错unable to connect to X server

    以前还可以正常启动图形界面,这次启动失败,报错unable to connect to X server 使用的是oracle用户,因为我是在oracle用户下创建的oracle数据库等 解决办法: ...

  4. C# 解决SharpSvn启动窗口报错 Unable to connect to a repository at URL 'svn://....'

    在远程机打开sharpsvn客户端测试,结果报错 Svn启动窗口报错 Unable to connect to a repository at URL 'svn://...' 咋整,我在win10我的 ...

  5. 执行yum命令报错"Unable to connect to Registration Management Service"

    问题描述 linux上执行yum相关命令时,报无法连接到注册管理服务的错误,具体报错信息如下 [root@aijihe-core-zy-2-3 ~]# yum install gcc Loaded p ...

  6. REDIS持久化报错失败

    redis log报错: [7666] 15 Jan 00:22:36.028 # Error moving temp DB file on the final destination: Invali ...

  7. Redis的Unable to connect to Redis和java.io.IOException: 远程主机强迫关闭了一个现有的连接问题的解决

      学习项目xhr系统用到springboot + vue(https://github.com/lenve/vhr),文档中要求使用到RabbitMQ,但是从我搭建开发环境来看,是否配置Rabbit ...

  8. rtmp一些状态信息详解-as连接FMS服务器报错状态汇总~~

    原地址:http://help.adobe.com/zh_CN/AIR/1.5/jslr/flash/events/NetStatusEvent.html 下表说明了 code 和 level 属性可 ...

  9. SpringBoot- springboot集成Redis出现报错:No qualifying bean of type 'org.springframework.data.redis.connection.RedisConnectionFactory'

    Springboot将accessToke写入Redisk 缓存,springboot集成Redis出现报错 No qualifying bean of type 'org.springframewo ...

  10. RedisCluster的rename机制失败报错,解决又是数据倾斜问题

    需求说明:spring session中的用户session更新是更新key的名字,所以对于key的操作时需要用newkey 替换oldkey value值只允许存在一个,这里用到rename就很合适 ...

随机推荐

  1. 分析document文档中script标签获取抖音无水印视频

    思路分析 使用 playwright 模拟浏览器打开分享链接 获取 播放页面 html 信息 解析 播放页面的 video标签,video标签的src属性就是视频的地址 这种模式会触发抖音的风控机制 ...

  2. ShardingSphere 数据分片之 Sharding-JDBC 深入理解

    更多内容,前往 IT-BLOG MySQL 的存储单位是 page[16kb],索引使用 B+Tree,深度为3(3次 IO便能查出数据).为了提高查询速度,存储单元中都存储的是索引的指针.MySQL ...

  3. std常用类型

    std::getline 文档 std::reverse 文档 注意事项 reverse()返回值为void,是对原序列进行修改 std::vector 文档 emplace 和 emplace_ba ...

  4. selenium验证码处理-获取验证码图片二进流数据转成原图保存

    1.因为视频的作者给的代码不完整,只有核心部分的代码. 2.视频作者示例使用的第三方破解12306的脚本网页(失效了) 所以本人无法复现,此次截取部分代码作为理解核心意思(思想方法最重要) 1.面向对 ...

  5. [ElasticSearch] ES集群状态由非正常状态(red)恢复为正常状态(green)的思路与实践

    1 场景描述 1.1 资源与原规划 三台主机组成ES集群的规划: 集群名: xxx_elastic 172.15.3.7 es1 master 172.15.3.8 es2 (非master) 172 ...

  6. JVM:并发的可达性分析

    当前主流编程语言的垃圾收集器基本上都是依靠可达性分析算法来判定对象是否存活的,可达性分析算法理论上要求全过程都基于一个能保障一致性的快照中才能够进行分析,这意味着必须全程冻结用户线程的运行. 在根节点 ...

  7. [INS-40996] Installer has detected that the Oracle home (/home/grid) is not empty in the following nodes: [rac2] --求助帖?

    问题描述:12c安装grid的时候,一直再报一个[INS-40996] Installer has detected that the Oracle home (/home/grid) is not ...

  8. 基于SqlSugar的开发框架循序渐进介绍(27)-- 基于MongoDB的数据库操作整合

    SqlSugar的开发框架本身主要是基于常规关系型数据库设计的框架,支持多种数据库类型的接入,如SqlServer.MySQL.Oracle.PostgreSQL.SQLite等数据库,非关系型数据库 ...

  9. C# 根据前台传入实体名称,动态查询数据

    前言: 项目中时不时遇到查字典表等数据,只需要返回数据,不需要写其他业务,每个字典表可能都需要写一个接口给前端调用,比较麻烦,所以采用下面这种方式,前端只需传入实体名称即可,例如:SysUser 1. ...

  10. Java Stream常见用法汇总,开发效率大幅提升

    本文已经收录到Github仓库,该仓库包含计算机基础.Java基础.多线程.JVM.数据库.Redis.Spring.Mybatis.SpringMVC.SpringBoot.分布式.微服务.设计模式 ...