接上一篇在linux上安装mysql的文章,本次将对于redis的安装、启动、远程连接作一个全面的记录。

环境介绍:阿里云ECS服务器,centos7.8系统。

1、安装

(1)下载并解压

对于redis,采用的是先下载tar.gz文件,传输到服务器上进行安装的方式。

粘一下官方网站的地址:https://redis.io/。

下载后,传输文件到linux上的 /usr/local 目录下,

tar -zxvf  redis-6.0.6.tar.gz

解压后,文件夹下会出现:

linx redis连接不了 linux redis连接命令_java

(2)准备安装环境

解压后,还不能直接make 和 make install。因为redis的安装需要依赖 。

否则,将会报一下错误:/bin/sh: cc: command not found。

需要安装两个依赖:

① gcc

yum -y install gcc

注意:gcc必须为比较新的版本,否则,还会报错,错误为:error: ‘struct redisServer‘ has no member named ‘loading‘。

解决方案:升级gcc

yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash

② tcl

yum -y install gcc

(3)开始安装

进入解压后的文件根目录,即是 redis-6.0.6。

make

make成功,进入根目录下的src目录。

make install

安装完成。

2、启动

进入redis解析目录下的src下,运行redis-server,即可将redis运行起来。但是这种运行将强制占用一个窗口,所以还需要对于配置文件进行修改后再进行运行。

(1)创建一个新的运行文件的目录(可选)

mkdir /usr/local/redis6/bin

(2)从安装目录的src下拷贝需要的文件到创建的运行目录中

cp /usr/local/redis-6.0.6/redis-server /usr/local/redis/bin/

linx redis连接不了 linux redis连接命令_linux_02

(3)拷贝配置文件并进行修改

从安装目录下去拷贝配置文件,以便于修改。

cp /usr/local/redis-6.0.6/redis.conf /usr/local/redis-conf/redis.conf

修改配置文件

bind 127.0.0.1 ==> 注释,以便于远程访问
protected-mode yes ==> protected-mode no 关闭保护模式,
daemonize no ==> daemonize yes  以守护进程的方式运行

(4)redis服务启动

到创建的启动目录下:/usr/local/redis6/bin,或到安装目录的src下:/usr/local/redis-6.0.6/src 执行下面的命令:

redis-server /usr/local/redis-conf/redis.conf

(5)redis客户端启动

到创建的启动目录下:/usr/local/redis6/bin,或到安装目录的src下:/usr/local/redis-6.0.6/src 执行下面的命令:

redis-cli

3、远程连接

实际上,经过以上的配置和启动,普通的虚拟机已经可以远程连接redis了,但是阿里云等云服务器还可能有另外的一些问题,需要去配置服务器实例安全组才可以。

注: 普通的虚拟机也要将防火墙关闭。

这里以阿里云为例:

到服务器的控制台中,单击进入云服务器的管理界面,选择需要配置的云服务器。

linx redis连接不了 linux redis连接命令_centos_03

选择本实例安全组,点击任一安全组的配置规则。

linx redis连接不了 linux redis连接命令_centos_04

进入新页面后返回,返回后的页面上创建新的安全组。

linx redis连接不了 linux redis连接命令_java_05

创建时选择快速添加,选择redis加入即可。

linx redis连接不了 linux redis连接命令_linx redis连接不了_06

安全组规则创建后,需要将安全组作用的服务器添加上。

linx redis连接不了 linux redis连接命令_linx redis连接不了_07

到此,安全组规则配置完成,在windows上使用java代码测试,或者使用redis的远程连接客户端RedisDesktopManager 进行测试都可以。