redis数据库缓存服务器

redis比mysql访问数据快

非关系型数据库以键值对的方式存储数据

作用:加快访问速度,缓解数据库压力

redis最新版本7

特点

丰富的数据结构 list,set,hash等数据结构的存储

支持持久化

支持事务 "一个完整的动作,要么全部执行,要么什么也没有做"

支持主从支持高可用,支持分布式分片集群

三:Redis部署

yum list | grep redis (ctenos)

yum安装

安装仓库

yum install http://rpms.famillecollet.com/enterprise/remi-release-7.rpm -y

安装redis

vi /etc/yum.repos.d/remi.repo

yum --enablerepo=remi install redis -y (直接安装也行)

面试问就说安装6.2的版本

启动和开机启动

systemctl start redis

systemctl enable redis

登录连接

redis-cli

退出

exit

redis主配置文件:/etc/redis.conf

默认redis只能自己连接自己

设置redis.conf,允许远程登录

vim /etc/redis.conf

关闭保护模式

systemctl restart redis

测试:使用另一台连接 redis-cli -h

2.编译安装

下载源码包

yum -y install wget

下载报

wget ...

解压

tar xf

安装编译所需软件

yum install -y gcc-c++ autoconf automake make

编译&&安装

cd redis-stable

make && make install

启动

cd src/

./redis-server &

登录连接

./redis-cli

3.数据持久化

开启持久化功能后,重启redis后,数据会自动通过持久化文件恢复

redis提供了两种持久化的方式,分别是RDB(Redis DataBase)和AOF(Append Only File仅追加文件)

方式一:RDB

RDB(Redis DataBase):是在不同的时间点,将redis存储的数据生成快照并存储到磁盘等介质上

特点:

1.周期性

2.不影响数据写入 ;RDB会启动子进程,备份所有数据。当前进程,继续提供数据的读写。当备份完成,才替换老的备份文件

3.高效;一次性还原所有数据

4.完整性较差 #故障点到上一次备份,之间的数据无法恢复

方式二:AOF

AOF(Append Only File)则是换了一个角度来实现持久化,那就是将redis执行过的所有写指令记录下来,在下次redis重新启动时,只要把这些写指令从前到后再重复执行一遍,就可以实现数据恢复了

特点:

1.实时性

2.完整性较好

3.体积大;记录数据的指令,删除数据的指令都会被记录下来

注意:

RDB和AOF两种方式可以同时使用,如果redis重启的,优先采用AOF方式进行数据恢复,这是因为AOF方式的数据恢复完整度更高

如果你没有数据持久化的需求,也完全可以关闭RDB和AOF方式,这样的话,redis将变成一个纯内存数据库,就像memcache一样

如何选择:

缓存:不用开启任何持久方式

双开:因RDB数据不实时,但同时使用两者时服务器只会找AOF文件,所以RDB留作万一的手段

对于我们应该选择RDB还是AOF,官方的建议是两个同时使用。这样可以提供更可靠的持久化方案

写入速度快 ------------AOF

写入速度慢 ------------RDB

4.持久化配置

1.RDB默认开启

set 添加

get 查看

相关推荐
weixin_4414552617 分钟前
Mysql MVCC
数据库·mysql
Su-RE39 分钟前
【ElasticSearch】text 和 keyword 类型区分
java·数据库·elasticsearch
武子康42 分钟前
Java-146 深入浅出 MongoDB 数据插入、批量写入、BSON 格式与逻辑查询and or not操作指南
java·开发语言·数据库·sql·mongodb·性能优化·nosql
奥尔特星云大使1 小时前
MySQL快速构建主从(基于GTID)
数据库·mysql·主从复制
小园子的小菜1 小时前
MySQL ORDER BY 深度解析:索引排序规则与关键配置参数阈值
数据库·mysql
wxjlkh1 小时前
Oracle Exadata一体机简介 1千多个W
数据库·oracle
泽虞1 小时前
《Qt应用开发》笔记p3
linux·开发语言·数据库·c++·笔记·qt·面试
XXYBMOOO1 小时前
如何自定义 Qt 日志处理并记录日志到文件
开发语言·数据库·qt
不剪发的Tony老师1 小时前
PEV2:一款PostgreSQL执行计划可视化工具
数据库·postgresql
IT 小阿姨(数据库)1 小时前
PostgreSQL wal_e 工具详解
运维·数据库·sql·postgresql·centos