redis如何实现持久化?

持久化就是将内存中的数据保存到硬盘,redis有两种持久化方案:

RDB :

概念: 默认持久化方案;是以快照的形式保存数据的结果;存储格式简单;

特点: 数据恢复快;不安全,容易丢失数据;

备份方式:

​ 1.save命令 ---- 会阻塞当前进程,影响项目运行。

2.bgsave命令 -----新开一个线程去执行数据保存任务。不影响项目运行。

3.配置文件 ------自动触发bgsave方式去保存数据。

AOF :

概念: 日志追加形式;保存的是数据的操作过程;依靠重新执行AOF文件中的命令来实现数据恢复;

特点: 数据安全性较高,不易丢失数据; 效率低,数据量大,恢复数据慢;

备份方式: 配置文件开启AOF方案,并指定保存策略;

appendonly yes|no  //开始或关闭AOF方案:
appendfsync always|everysec|no //设置保存策略 每次/每秒保存/不保存

日志瘦身: 将对一个数据的多步操作直接合成一步

1.手动瘦身:

bgrewriteaof # 这是一个redis指令,不是配置

2.自动瘦身:配置文件.

auto-aof-rewrite-min-size size # 达到指定大小就自动重写,size可以指定多少兆:2MB 、 4MB

auto-aof-rewrite-percentage percent #按照存储占用整体的百分比自动重写,percent指定10%,达到10%就瘦身.

你可能感兴趣的:(高频面试题,redis,缓存,数据库)