1.下载安装包

1.1 下载

首先进入redis官网,找到稳定版,右键获取下载链接

LinuxRedis 外部无法连接 linux redis 连接_配置文件


进入到服务器中,最好进入/usr/local目录下,方便管理,使用命令:

LinuxRedis 外部无法连接 linux redis 连接_linux_02

wget https://download.redis.io/releases/redis-6.2.6.tar.gz

1.2 解压安装

使用tar 命令解压到当前目录:

tar -vxf redis-6.2.6.tar.gz

删除压缩包,并移动到/usr/local/redis目录下

LinuxRedis 外部无法连接 linux redis 连接_linux_03

然后进行make 解压

make完成之后会显示这种

LinuxRedis 外部无法连接 linux redis 连接_linux_04


然后进行安装,这里需要注意的是我们要指定安装路径,使用关键字:PREFIX=

后面跟上路径,这么做的作用是编译的时候用于指定程序存放的路径。比如我们现在就是指定了redis必须存放在/usr/local/redis目录。假设不添加该关键字Linux会将可执行文件存放在/usr/local/bin目录,库文件会存放在/usr/local/lib目录。配置文件会存放在/usr/local/etc目录。其他的资源文件会存放在usr/local/share目录。这里指定号目录也方便后续的卸载,后续直接rm -rf /usr/local/redis 即可删除redis。

执行结果如下

LinuxRedis 外部无法连接 linux redis 连接_服务器_05


到这里我们已经完成redis的安装,接下来就算文件配置和启动

2.启动

2.1启动方式

可以通过两种方式启动,一种是后台启动,另外一种是前台启动,区别是前台启动当你关闭当前页的时候,redis也会随之关闭,后台启动则不会。
前台启动方式:(以我自己的路径为例,具体情况根据自己路径而定)

./bin/redis-server redis.conf

后面的redis.config是指定启动配置文件
redis-cli 全局调用:sudo cp src/redis-cli /usr/local/bin/

后台启动方式,其实就是多了一个&:

./bin/redis-server& redis.conf

3.配置文件

1

如果不想每次都加&,可以修改redis.config中的daemonize属性为yes,

这里列举下比较重要的配置项

LinuxRedis 外部无法连接 linux redis 连接_redis_06


修改配置文件

vim /usr/local/redis/redis.conf

通过 /daemonize 查找到属性,默认是no,更改为yes即可。 (通过/关键字查找出现多个结果则使用 n字符切换到下一个即可,查找到结果后输入:noh退回到正常模式)

2

如果想远程连接,还需要修改bind 和 protected-mode,具体操作是bind 注销127.0.0.1这一行,原因是这行代码的意思是只允许本地连接redis,protected-mode也一样,保护模式关闭即可。

3

此时重启redis,使用./bin/redis-server redis.conf,前台启动,再使用redis-cli 进入,使用CONFIG GET * 查看配置是否更改,可以发现已经更改。

接下来使用远程连接redis,可能还会失败,为什么呢,因为你本地防火墙没有开放6379端口,或者是你的服务器没有添加安全组,我买的是阿里云服务器,去控制台添加安全组即可,至于服务器的防火墙,开启6379端口即可。
在CentOS 7或RHEL 7或Fedora中防火墙由firewalld来管理,

如果要添加范围例外端口 如 1000-2000
语法命令如下:启用区域端口和协议组合
firewall-cmd [–zone=] --add-port=[-]/ [–timeout=]
此举将启用端口和协议的组合。端口可以是一个单独的端口 或者是一个端口范围 - 。协议可以是 tcp 或 udp。
实际命令如下:

添加
firewall-cmd --zone=public --add-port=80/tcp --permanent (–permanent永久生效,没有此参数重启后失效)
firewall-cmd --zone=public --add-port=1000-2000/tcp --permanent
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone=public --query-port=80/tcp
删除
firewall-cmd --zone=public --remove-port=80/tcp --permanent

这些完成之后就可以远程连接redis了,也是花了一天时间,磕磕碰碰,最终也是成功了。