一、概述
官网:https://redis.io/
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
Redis不仅仅支持简单的key-value类型的数据,同时还提供list(列表),set(集合),zset(有序集合),hash(哈希表)等数据结构的存储。
Redis支持数据的备份,即master-slave(主从模式)模式的数据备份。
Redis 优势:
性能极高 – Redis的读取速度是110000次/s,写入速度是81000次/s 。
丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。
原子 – Redis的所有操作都是原子性的。意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。
丰富的特性 – Redis还支持 publish/subscribe(发布-订阅模式), 通知, key 过期等等特性。
二、下载
首先需要去 github 上下载 redis 的安装包
下载地址:Download | Redis
通过上面链接进入页面,点击箭头所指的地方就能下载到最新版的 redis 了
也可以使用
#进入目录 local
cd /usr/local/
#创建目录
mkdir redis
#进入目录 redis
cd redis
#下载文件
wget https://github.com/redis/redis/archive/7.0.11.tar.gz
三、编译并安装redis
Redis 是基于 C语言编写的,所有还需要安装 Redis 所需要的 gcc
依赖:
yum install -y gcc tcl
使用 tar 命令解压 reids 的安装包
tar -zxvf redis-X.X.X.tar.gz
解压成功之后进入 redis 的安装目录
make
等待make命令执行完成即可。
如果执行make命令报错:cc 未找到命令,原因是虚拟机系统中缺少gcc,执行下面命令安装gcc:
yum -y install gcc automake autoconf libtool make
如果执行make命令报错:致命错误:jemalloc/jemalloc.h: 没有那个文件或目录,则需要在make指定分配器为libc。执行下面命令即可正常编译:
make MALLOC=libc
#执行下面命令安装redis,并指定安装目录
make install PREFIX=/usr/local/redis
至此,redis即安装成功。
四、启动redis
1、进入redis安装目录,执行下面命令启动redis服务
./bin/redis-server redis.conf
如果提示没有redis.conf ,可以从编译后的目录复制一份 redis.conf 到 /usr/local/redis
此时,可以看到redis服务被成功启动:
但这种启动方式不能退出控制台,如果退出,那么redis服务也会停止。如果想要redis以后台方式运行,需要修改redis的配置文件:redis.conf。
将该配置文件中的daemonize no改为daemonize yes即可:
修改完成后,重新执行启动命令启动redis,
然后通过下面命令查看redis进程,可以发现redis服务已经被启动了:
ps -ef | grep redis
2、通过redis-cli测试redis是否可用,在redis安装目录执行下面命令:
./bin/redis-cli
连接redis可以指定IP,端口,密码
./bin/redis-cli -h 主机地址 -p 端口 -a 访问密码
五、服务方式启动
首先,新建一个系统服务文件:
vi /etc/systemd/system/redis.service
[Unit]
Description=redis-server
After=network.target[Service]
Type=forking
ExecStart=/usr/local/bin/redis-server /soft/redis/redis-7.0.2/redis.conf
PrivateTmp=true[Install]
WantedBy=multi-user.target
注意:这里 ExecStart 后面配置文件的路径不要写错
然后重载系统服务:
systemctl daemon-reload
现在 redis 还没有实现开机自启,它只是被系统管理了,可以通过下面的命令启动 redis
systemctl start redis
查看 redis 状态:
systemctl status redis
设置 redis 开机自启:
systemctl enable redis