1.安装gcc

由于Redis是用C语言开发,安装之前必先确认是否安装gcc环境。
查看是否安装gcc

  1. # gcc -

安装gcc

  1. # yum install -y gcc

2.安装Redis

这里我从本机下载redis安装包,又上传到Linux上的:Redis官方下载地址
解压

  1. # tar -zxvf redis-6.2.4.tar.gz

在解压后的目录中,编译

  1. # cd redis-6.2.4
  2. # make

安装并指定安装目录

  1. # make install PREFIX=/usr/local/redis

3.后台启动

复制配置文件到安装目录中

  1. # cp /usr/local/redis/redis-6.2.4/redis.conf /usr/local/redis/bin/

修改redis.conf,将daemonize no改为daemonize yes
启动

  1. # ./redis-server redis.conf

4.设置开机启动

创建启动文件

  1. # cd /etc/systemd/system/
  2. # touch redis.service

将以下信息复制到文件中

  1. [Unit]
  2. Description=redis-server
  3. After=network.target
  4. [Service]
  5. Type=forking
  6. ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
  7. PrivateTmp=true
  8. [Install]
  9. WantedBy=multi-user.target

重新加载配置文件

  1. # systemctl daemon-reload

启动Redis

  1. # systemctl start redis.service

设置开机启动

  1. # systemctl enable redis.service

5.开启远程访问

修改redis.conf文件

将bind 127.0.0.1 注释或者改为bind 0.0.0.0

将protected-mode yes改为protected-mode no
requirepass foobared 将注释去掉,foobared替换成想要的密码
重启

  1. systemctl restart redis

6.开放端口

查看防火墙状态

  1. firewall-cmd --state

如果状态是not running则需打开,重新打开防火墙

  1. systemctl start firewalld.service

开启6379端口

  1. firewall-cmd --zone=public --add-port=6379/tcp --permanent

上述命令解释:

—zone=public:表示作用域为公共的; —add-port=8080/tcp:添加tcp协议的端口8080; —permanent:永久生效,如果没有此参数,则只能维持当前服务生命周期内,重新启动后失效; 重启防火墙

  1. systemctl restart firewalld.service

重新载入配置

  1. firewall-cmd --reload

7.其他命令

  1. systemctl start redis.service #启动redis服务
  2. systemctl stop redis.service #停止redis服务
  3. systemctl restart redis.service #重新启动服务
  4. systemctl status redis.service #查看服务当前状态
  5. systemctl enable redis.service #设置开机自启动
  6. systemctl disable redis.service #停止开机自启动

8.遇到的问题

配置完毕后,发现远程无法链接Redis服务器,在虚拟机中本地使用redis-cli也无法登陆。使用配置文件./redis-server redis.conf无法启动redis,不使用配置文件./redis-server便可以启动。所以我认为是把redis.conf给改坏了,又重新复制了一份该文件后,再使用./redis-server redis.conf启动,发现启动成功。