Redis学习-redis持久化
Posted 美好的明天
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Redis学习-redis持久化相关的知识,希望对你有一定的参考价值。
内存(兔子):高效,断电数据丢失
硬盘(乌龟):读写速度慢于内存的,断电数据依旧存在
持久化:把数据保存在硬盘上
关系型数据库:mysql-持久化:
- 任何操作都是硬盘上,断电以后,硬盘上数据还在。
非关系型数据库:redis
- 增删改查,数据都是在内存上进行操作。
- 断电后内存中的数据不存在。
- 断电后:redis的部分数据会丢失,丢失的数据是保存在内存中的,部分保存在硬盘上
- redis存在持久化操作
Redis两种持久化策略:RDB,AOF
默认持久化机制:RDB
RDB:使用快照方式保存数据
RDB相当于快照,保存的仅是一种状态。
20G数据--> 几Kb快照
优点:
1,快照保存数据速度极快,还原数据速度极快。
2,适用于灾难备份(rdb文件小,备份rdb文件速度很快)。
缺点:
RDB机制符合要求就会照快照(随时随地启动),会占用一定系统资源(突然的),很可能内存不足,直接宕机(宕机后,服务器关闭,非正常关闭,内存中的数据也因此没了)。
适用于:内存比较充裕的计算机。
RDB何时进行照快照:
1,服务器关闭时,照快照。 ./bin/redis-cli shutdown
2,key满足一定条件,会照快照。
AOF:使用日志功能保存数据操作
redis同步了三种同步策略:每秒同步,每修改同步,和不同步。
AOF配置:
no 不同步:高效,但是不进行持久化(默认)
everysec 每秒同步:每秒进行一次AOF保存数据
always 每修改同步:只要有key变化语句,就进行AOF保存数据。
适用于:内存空间较小的计算机。
AOF操作:只会保存导致key变化的语句。
启用AOF
修改redis.conf,配置文件,如下俩个截图:
策略选择:
优点:
1,持续性占用极少量的内存资源。
缺点:
1,日志文件会比较大。
2,不适用于灾难容灾(日志文件大,拷贝慢)
以上是关于Redis学习-redis持久化的主要内容,如果未能解决你的问题,请参考以下文章