Redis 客户端连接服务器失败

公司项目开发环境需要使用到 Redis,申请基础技术支撑平台的 Redis 中间件比较麻烦,项目组也不知道具体流程,而且时间可能比较长。

现在的情况是,项目因为 Redis 启动报错。

这种情况下,我们项目组就自行在虚拟机上临时搭建了 Redis。当然为了效率,搭建的是单机版的,采用的是公司提供的安装包与运行脚本。

本来这都是很简单的事情,但是安装完毕之后,在服务器上可以正常登陆访问。

解压后的Redis目录如下:

启动Redis

./redis-cli

因为是在本机安装的,也没有密码,这样是直接可以登陆的。

 

 客户端工具连接Redis报错

我们使用Redis客户端连接工具AnotherRedisDesktopManager连接Redis,竟然报错了,报错信息如下:

redis-cli 报错:redis Could not connect to Redis at 127.0.0.1:6379: Connection refused  

这个是没有想到的。这说明服务启动没问题,但是连接被拒绝了。

下面解决方案参考这篇文章:

redis bind连不上报错redis Could not connect to Redis at 127.0.0.1:6379: Connection refused

以及这篇文章:

Could not connect to Redis at 127.0.0.1:6379:由于目标计算机积极拒绝,无法连接

根据上述文章所说,我们知道:

bind表示的是指定本机可以接受连接的网卡地址,比如redis服务器上有一个公网IP(114.114.114.114),一个内网IP(192.168.1.109),如果该redis服务器需要被本机及以外的服务器访问(比如说内网的服务器),此时需要在redis.conf中绑定内网ip:

bind 192.168.1.109 127.0.0.1

 意思是说,使用192.168.1.109 这个ip来接收来自外部的连接请求。

未修改的原始状态是:

bind 127.0.0.1

 这样的绑定只能在服务器上自己连接自己,就像我上面连接的一样,只需要通过./redis-cli命令就登陆上了。但是这种方式在非服务器的地方连接是失败的。

上面给出了一个方案,还有一种方案是,直接注释掉该绑定ip,即注释掉:

# bind 127.0.0.1

这代表的是开启所有ip地址的访问权限。

把redis.conf文件里面的protected-mode yes的“yes”改成“ no ”,

  • yes 保护模式,只允许本地链接
  • no 保护模式关闭

此时再通过客户端工具连接Redis已经成功。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

北冥牧之

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

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

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

打赏作者

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

抵扣说明:

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

余额充值