安装

官网
官方文档

源码安装

cd /usr/local/src

# 旧版本下载redis-5.0.9(低版本系统可能不支持最新版redis)
sudo wget http://download.redis.io/releases/redis-5.0.9.tar.gz  
# 最新稳定版下载redis
sudo wget https://download.redis.io/redis-stable.tar.gz

# 以下是下载最新版后的操作,如果下载旧版,注意修改文件名称
sudo tar zxvf redis-stable.tar.gz redis-stable/ ; cd redis-stable/
sudo make
sudo make PREFIX=/usr/local/redis install
sudo mkdir /usr/local/redis/{conf,log} ; sudo mkdir -p /data/redis
sudo useradd -s /sbin/nologin redis
sudo chown redis /data/redis /usr/local/redis/log

配置文件修改

# 备份一下
sudo cp redis.conf /usr/local/redis/conf/
# 编辑配置文件
sudo vim /usr/local/redis/conf/redis.conf

bind 0.0.0.0        # 允许所有ip远程访问。新增。
protected-mode no   # 关闭保护模式。修改。
port 6379           # 端口。可修改。
daemonize yes       # 后台运行。修改。
logfile "/usr/local/redis/log/redis.log"  # 日志文件,需指定路径。修改。
dir /data/redis  # 数据文件,需指定路径。修改。
pidfile /usr/local/redis/log/redis_6379.pid  # 进程文件,需指定路径。修改。
maxmemory 100mb     # 最大内存。新增。
# requirepass foobared  下面增加密码配置
requirepass 123456  # 密码123456。新增。

定义systemd服务管理脚本

sudo vim /lib/systemd/system/redis.service

[Unit]
Description=redis
After=network.target
[Service]
User=redis
Type=forking
TimeoutSec=0
PIDFile=/usr/local/redis/log/redis_6379.pid
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/conf/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target

启动Redis服务

sudo vim /etc/sysctl.conf
# 增加内容
net.core.somaxconn = 2048
vm.overcommit_memory = 1
sudo sysctl -p
sudo systemctl daemon-reload
sudo systemctl enable redis
sudo systemctl start redis
# 配置环境变量方便使用
sudo vim /etc/profile.d/redis.sh
PATH=$PATH:/usr/local/redis/bin

source /etc/profile.d/redis.sh

连接redis

# 连接
redis-cli -a '123456'

# 指定地址连接
redis-cli -h 127.0.0.1 -p 6379 -a '123456'

# exit退出

编译错误解决办法

1) cc: Command not found 答:Redis它是由C语言编写的,所以编译需要GCC的支持,解决方案安装GCC:

yum -y install gcc

2) fatal error: jemalloc/jemalloc.h: No such file or directory 答:可能是上一次的编译文件没有清楚,解决方案清楚编译残留:

make clean、make distclean