Redis简介
是一个高性能的 key-value 数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
- Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
- Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。
- Redis支持数据的备份,即master-slave模式的数据备份。
Redis安装
1)安装新版gcc编译器
sudo yum -y install gcc-c++
2)上传redis-6.2.1.tar.gz安装包到/opt/software目录下
3)解压redis-6.2.1.tar.gz到/opt/module目录下
tar -zxvf redis-6.2.1.tar.gz -C /opt/module/
4)之后进入安装包的src目录,编辑Makefile文件,修改软件安装路径如下:
vim Makefile
#修改如下
PREFIX?=/home/wangyue
5)在Redis的解压路径下执行编译和安装命令
make && make install
Redis的启动
1)拷贝一份redis.conf配置文件到工作目录
mkdir myredis
cd myredis
cp /opt/module/redis-6.2.1/redis.conf .
- 绑定主机IP,修改bind属性
vim redis.conf
bind 0.0.0.0
3)指定配置文件进行启动
redis-server redis.conf
客户端访问
1)使用redis-cli 命令访问启动好的Redis,默认端口为6379
redis-cli
127.0.0.1:6379>
2)如果有多个Redis同时启动,或者端口做了修改,则需指定端口号访问
redis-cli -p 6379
127.0.0.1:6379>
3)如果访问非本机redis,需要指定host来访问
redis-cli -h 127.0.0.1 -p 6379
127.0.0.1:6379>
4)通过 ping 命令测试验证
127.0.0.1:6379> ping
PONG
关闭Redis服务 shutdown
Redis的五大数据类型
String,List,Set,Zset,Hash
练习:gitee仓库
redis: myredis (gitee.com)https://gitee.com/wy980530/redis
Redis 持久化
Redis提供了2个不同形式的持久化方式 RDB 和 AOF。
RDB(Redis Database)为快照备份,会在备份时将内存中的所有数据持久化到磁盘的一个文件中。
AOF(Append Only File)为日志备份,会将所有写操作命令记录在一个日志文件中。
RDB优缺点
1)优点:
节省磁盘空间,恢复速度快.
2)缺点:
虽然Redis在fork时使用了写时拷贝技术,但是如果数据庞大时还是比较消耗性能。在备份周期在一定间隔时间做一次备份,所以如果Redis意外down掉的话,就会丢失最后一次快照后的所有修改
AOF的优缺点
1)优点:
(1)备份机制更稳健,丢失数据概率更低。
(2)可读的日志文本,通过操作AOF文件,可以处理误操作。
2)缺点:
(1)比起RDB占用更多的磁盘空间
(2)恢复备份速度要慢
(3)每次写都同步的话,有一定的性能压力
(4)存在个别bug,造成恢复不能
AOF的优先级大于RDB,如果同时开启了AOF和RDB,Redis服务启动时恢复数据以AOF为准.
RDB和AOF用哪个好
(1)官方推荐两个都启用。
(2)如果对数据不敏感,可以选单独用RDB
(3)不建议单独用 AOF,因为可能会出现Bug。
(4)如果只是做纯内存缓存,可以都不用