本文主要介绍如何在centos7服务器下安装redis。

1 前期准备

1.1 检查gcc依赖

redis是由C语言开发,因此安装之前需要确保服务器已经安装gcc

检查语句

gcc -v

1.2 安装gcc

1.2.1 在线安装

在线安装需要服务器联网

语法

yum install -y gcc
1.2.2 离线安装

步骤如下

  1. 离线安装包下载地址:阿里云盘
  2. 上传至服务器目录
  3. 在目录下执行以下语句
rpm -Uvh *.rpm --nodeps --force

1.3.下载redis安装

  1. 手动下载:下载地址
  2. 命令下载
# 命令下载,所以我的下载目录为:/usr/local/redis,这里按照自己的实际情况调整
wget https://download.redis.io/releases/redis-6.2.6.tar.gz

2 安装

2.1 解压文件

#进入到文件目录 路径是自己情况修改
cd /usr/local/redis
# 解压
tar -zxvf redis-6.2.6.tar.gz

2.2 编译文件

# 进入到解压后的文件目录 路径是自己情况修改
cd /usr/local/redis/redis-6.2.6
# 编译
make

2.3 指定安装目录并进行安装

make install PREFIX=/usr/local/redis

2.4 启动服务

# 复制配置文件到bin目录  目录需要自己视情况修改 复制语法:cp <源文件> <目标文件夹路径> 
cp /usr/local/redis/redis-6.2.6/redis.conf /usr/local/redis/bin/
# 进入redis安装目录
cd /usr/local/redis/bin/

2.5 修改配置文件

# vim redis.conf

备注:如果想要设置指定IP连接redis,只需要修改redis.conf文件中bind配置项即可。如果不限IP,将127.0.0.1修改成0.0.0.0即可

centos6.5 redis 启动 redis centos7_redis


修改端口号

centos6.5 redis 启动 redis centos7_服务器_02


设置密码

centos6.5 redis 启动 redis centos7_服务器_03


centos6.5 redis 启动 redis centos7_centos6.5 redis 启动_04

2.6 启动服务

# 启动服务
./redis-server redis.conf
# 查看进程
ps -ef |grep redis

2.7 设置开机自动启动

cd /lib/systemd/system/
# 新建文件
vim redis.service

文件内容如下

[Unit]
Description=redis-server
After=network.target

[Service]
Type=forking
# ExecStart需要按照实际情况修改成自己的地址
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/bin/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

设置开启自动启动

# 开机自动启动
systemctl enable redis.service
# 启动redis服务
systemctl start redis.service
# 查看服务状态
systemctl status redis.service
# 停止服务
systemctl stop redis.service
# 取消开机自动启动(卸载服务)
systemctl disabled redis.service

2.8 小问题

如果主机连不上redis可以检查下防火墙或者开放redis端口

2.8.1 关闭防火墙
# 检查防火墙状态 看到active(running)就意味着防火墙打开了
sudo systemctl status firewalld
# 关闭防火墙
sudo systemctl stop firewalld
# 开启防火墙
sudo systemctl start firewalld
# 上面的命令是临时的,重启后就失效了
# 彻底关闭防火墙
sudo systemctl disable firewalld
2.8.2 开放端口
# 开放redis端口
 firewall-cmd --zone=public --add-port=6379/tcp --permanent
 # 应用
 firewall-cmd --reload