当前位置:首页 > 问答 > 正文

远程连接Redis其实没那么难,设置好一步步来还能做更多操作

(引用来源:CSDN博客《SpringBoot连接远程Redis超详细教程》)

远程连接Redis,听起来好像是程序员大佬们才会搞的高深操作,很多人一想到要配置服务器、设置防火墙规则就头大,觉得不如连本地省事,但其实这事儿真没想象中那么复杂,只要你耐着性子,像拼乐高一样一步步把零件搭好,最后就能成功,而且一旦打通了这个关卡,你会发现能做的事情一下子就变多了,比如把测试程序放到云服务器上跑,或者从家里电脑连接办公室的服务器查数据,都非常方便。

最最关键的一步,你得有一个远程的Redis服务,这个服务可不是凭空变出来的,通常它跑在一台云服务器上,比如阿里云、腾讯云之类的,你自己电脑上装的那个Redis,默认只能自己访问,别人是连不上的,第一步是确保你有一个在运行的远程Redis服务器。

(引用来源:Redis官方文档《Redis Configuration》)

有了服务器之后,别急着连,Redis本身就像个守旧的老管家,默认情况下它只认“家里人”(也就是服务器本机),对外面来的客人一律拒之门外,这个设置就在Redis的配置文件里,通常叫redis.conf,你需要用工具打开这个文件,找到一行叫bind的设置,它默认可能是bind 127.0.0.1,这个127.0.0.1就是个回环地址,意思就是只允许本机访问,你要做的就是把这行注释掉(在前面加个#),或者改成bind 0.0.0.0,0.0.0.0这个地址有点特殊,它不代表一个具体的机器,而是表示“接受来自任何网络接口的连接”,相当于老管家发话了:“来的都是客,我欢迎所有人”,这一步是开放大门的钥匙,非常重要。

(引用来源:常见服务器管理经验)

光Redis自己愿意接待还不行,服务器本身也得放行,云服务器一般都有个防火墙,像小区的保安,Redis服务默认在6379端口上工作,你得告诉保安:“等下有个朋友从外面来6379端口找我,你让他进来”,在云服务器的管理控制台上,通常有“安全组”或者“防火墙”的设置,你需要添加一条规则,允许来自你本地IP地址(或者如果你想省事,可以先设置为允许所有IP地址0.0.0.0/0,但这样安全性会降低)的流量访问6379端口,这一步就像是给客人发了一张临时通行证。

(引用来源:Redis官方文档《Security》)

大门敞开了,保安也打点好了,但进屋里可能还需要一道口令,Redis默认是没有密码的,这在公网上非常危险,相当于你家大门敞开,谁都能进,强烈建议设置一个密码,还是在那个redis.conf文件里,找到requirepass这个配置项,把注释去掉,在后面写上你的密码,比如requirepass my_strong_password,这样,客人来了还得对得上暗号才能进屋,改完配置后,一定要记得重启Redis服务,让新的设置生效。

好了,服务器那边的准备工作总算做完了,现在轮到你的本地电脑了,你怎么连过去呢?你需要几个信息:服务器的公网IP地址(在云服务器控制台可以找到)、端口号(默认6379)、还有你刚设置的密码(如果有的话)。

(引用来源:第三方Redis桌面管理工具介绍文章)

如果你是写代码连接,比如用Python的redis库,代码大概长这样:

import redis
r = redis.Redis(host='你的服务器公网IP', port=6379, password='你的密码', decode_responses=True)
r.set('name', '张三')  # 尝试写一个数据
print(r.get('name'))   # 再读出来,成功就说明连接没问题

运行一下,如果没报错,并且能打印出“张三”,恭喜你!远程连接成功了!

除了写代码,你还可以用一些图形化工具,比如Another Redis Desktop Manager这种软件,在软件里新建连接,把IP、端口、密码这些信息填进去,点连接,就能看到一个非常直观的界面,里面所有的数据都以键值对的形式展示出来,你可以直接点击查看、修改、删除数据,比在命令行里敲命令要方便直观得多。

当你成功连上之后,你就会发现世界开阔了,你不再被束缚在自己的电脑前,你可以把开发好的应用部署到任何一台能联网的机器上,让它使用同一个强大的远程Redis服务,你可以和同事共享一个Redis环境,一起调试数据,你甚至可以做一些简单的监控,通过图形化工具看看哪些数据最活跃,内存占用情况怎么样。

所以你看,远程连接Redis其实就是一个流程化的操作:准备服务器 -> 修改Redis配置打开大门 -> 设置服务器防火墙放行端口 -> 可选但建议设置密码保证安全 -> 本地使用信息进行连接,每一步都不难,只是需要一点耐心和细心,一旦你亲手走通这个流程,那种“原来如此”的成就感,以及之后能带来的便利,绝对会让你觉得这点付出是值得的,它不是一个高深的魔法,而是一项非常实用、能提升你工作效率的技能。

远程连接Redis其实没那么难,设置好一步步来还能做更多操作