1、简介
Redis 是完全开源的,遵守 BSD 协议,是一个高性能的 key-value 数据库。Redis 与其他 key - value 缓存产品有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
2、安装
2.1 下载
选择最新版本下载:Redis下载
指定版本下载:http://download.redis.io/releases/redis-7.0.2.tar.gz(https://github.com/redis/redis/archive/7.0.2.tar.gz)
# 使用wget下载
wget http://download.redis.io/releases/redis-7.0.2.tar.gz
2.2 安装
tar -zxvf redis-7.0.2.tar.gz
cd redis-7.0.2
make && make install
编译安装后,二进制文件在src目录下。
若编译安装出现/bin/sh: cc: command not found,执行yum install gcc-c++ 后输入y回车即可。
若再次执行出现:
[root@bogon redis-3.2.0]# make
cd src && make all
make[1]: 进入目录“/usr/local/redis-3.2.0/src”
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命错误:jemalloc/jemalloc.h:没有那个文件或目录
#include <jemalloc/jemalloc.h> ^
编译中断。
make[1]: *** [adlist.o] 错误 1
make[1]: 离开目录“/usr/local/redis-3.2.0/src”
make: *** [all] 错误 2
解决“jemalloc/jemalloc.h:没有那个文件或目录“问题,在进行编译(因为上次编译失败,有残留的文件)
执行命令:make distclean,再次执行 make && make install,问题解决。
2.3 配置文件修改
bind 0.0.0.0
daemonize yes
# 默认情况下,启用保护模式。只有当您确定希望其他主机的客户端连接到Redis时,才应该禁用它,即使没有配置身份验证。
protected-mode no
requirepass 666666
注:此处有个需要注意的点,当没有配置密码时,要想其他主机连接到redis,必须禁用保护模式;若已配置了密码,保护模式可保持默认启用状态。
2.4 systemctl管理redis服务
第一步:在 /usr/lib/systemd/system 目录下新建一个名为 redis.service 的文件,文件内容如下:
[Unit]
Description=redis
After=network.target
[Service]
Type=forking
#PIDFile和redis.conf配置中一致
PIDFile=/var/run/redis_6379.pid
ExecStart=/usr/local/redis/src/redis-server /usr/local/redis/redis.conf
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Install]
WantedBy=multi-user.target
第二步:刷新配置
systemctl daemon-reload
2.5 启动、重启、停止等
# 启动
systemctl start redis
# 重启
systemctl restart redis
# 停止
systemctl stop redis
# 开机自启
systemctl enable redis
# 禁止开机自启
systemctl disable redis
# 查看状态
systemctl status redis