栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Redis持久化机制

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Redis持久化机制

RDB

RDB是Redis默认的持久化机制

RDB持久化文件,速度比较快,而且存储的是一个二进制文件,传输起来很方便。

RDB持久化的时机:

save 900 1:在900秒内,有1个key改变了,就执行RDB持久化。

save 300 10:在300秒内,有10个key改变了,就执行RDB持久化。

save 60 10000:在60秒内,有10000个key改变了,就执行RDB持久化。

RDB无法保证数据的绝对安全。

流程如下↓

1进入redis的配置文件redis.conf增加右边的rdb配置

save 900 1
save 300 10
save 60 10000
rdbcompression yes
dbfilename redis.rdb

 2接着来到docker-compose.yml文件,增加redis数据文件夹的目录挂载

version: '3.1'
services:
  redis:
    image: daocloud.io/library/redis:5.0.7
    restart: always
    container_name: redis
    environment:
      - TZ=Asia/Shanghai
    ports:
      - 6379:6379
    volumes:
      - ./conf/redis.conf:/usr/local/redis/redis.conf
      - ./data:/data   #增加数据文件夹的目录挂载
    command: ["redis-server","/usr/local/redis/redis.conf"]

3先彻底停止然后重启redis容器,接着进入redis容器内部,准备操作

[root@localhost docker_redis]# docker-compose down
[root@localhost docker_redis]# docker-compose up -d

4执行redis-cli客户端命令,然后通过shutdown save关闭保存命令来快速触发数据持久化保存数据到rdb文件,最后restart重启redis容器,发现数据还在,证明持久化成功

AOF

AOF持久化机制默认是关闭的,Redis官方推荐同时开启RDB和AOF持久化,更安全,避免数据丢失。

AOF持久化的速度,相对RDB较慢的,存储的是一个文本文件,到了后期文件会比较大,传输困难。

AOF持久化时机。

appendfsync always:每执行一个写操作,立即持久化到AOF文件中,性能比较低。 appendfsync everysec:每秒执行一次持久化。 appendfsync no:会根据你的操作系统不同,环境的不同,在一定时间内执行一次持久化。

AOF相对RDB更安全,推荐同时开启AOF和RDB。

流程如下↓

1进入redis配置文件增加aof配置,修改了配置文件,用docker-compose restart重启redis容器让其生效

redis.conf 增加下面配置:

appendonly yes
appendfilename "redis.aof"
# appendfsync always
appendfsync everysec
# appendfsync no

重启容器:

[root@localhost docker_redis]# docker-compose restart

2进入redis容器内部,关闭但不保存,发现我们的数据lisi持久化到了aop文件,可以打开文件看看↓

 

注意事项

同时开启RDB和AOF的注意事项:

同时开启了AOF和RDB持久化,那么在Redis宕机重启之后,会加载一个持久化文件,官方默认选择AOF文件.

先开启了RDB,再次开启AOF,如果RDB执行了持久化,那么RDB文件中的内容会被AOF覆盖掉,建议同时开启.

另外,如果配置忘了,可以随便打开一个redis服务器软件安装包,解压找到里面的conf配置文件,拷贝即可

 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/705408.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号