Redis客户端链接以及持久化数据(三)

0、Redis目录结构


      1)Redis介绍及部署在CentOS7上(一)html

      2)Redis指令与数据结构(二)redis

      3)Redis客户端链接以及持久化数据(三)安全

      4)Redis高可用之主从复制实践(四)服务器

      5)Redis高可用之哨兵模式Sentinel配置与启动(五)微信

      6)Redis高可用之集群配置(六)数据结构

 

1、介绍


上篇文章咱们讲解了Redis的结构与指令,其实很简单,我也没有过多的讲解,此次咱们讲解一下Redis链接客户端以及持久化方案。app

一、上文中咱们针对redis的数据操做都是在服务器中使用命令执行的,固然这个也是很是安全的处理方式,那么在开发的阶段为了方便咱们但是使用可视化界面链接redis,asp.net

好比RedisDesktopManager 这个软件等,方便咱们快速的操做数据,下面的介绍也是依据这个软件进行的。异步

二、 针对与Redis 你们确定也知道,redis的数据是保存在内存的,可是一旦把redis关闭则数据就会丢失,为了防止数据丢失,那么我就须要数据持久化到硬盘上,在此提供了两种持久化方案:工具

第一种是 RDB 快照的形式,第二种是 AOF 相似日志追加的方式。

 

那么我就快速的带你们了解一下

 

2、Redis客户端链接


一、前提说明一下:此方案只容许测试的时候配置,其余状况禁止使用

二、咱们进入Redis的文件夹中,新建一个redis配置文件,文件名为: redis.custom.conf,而后在里面以下内容:

配置中的bind 表明绑定 本服务器的IP,在生产环境中禁止使用 0.0.0.0 ,此IP表明服务器内全部的IP均可以被外网进行链接;在生产环境中咱们推荐使用绑定具体的内网IP,如个人IP为:192.168.250.132

daemonize yes port 6666 requirepass 123 logfile ./redislog_louie.log dir ./ bind 192.168.250.132 127.0.0.1 # 0.0.0.0

 三、此处个人redis端口为6666,若是你们没有关闭防火墙,则须要在防火墙中开启端口经过,容许端口6666的经过。

配置完成后咱们保存而后启动。

./src/redis-server redis.custom.conf

而后咱们使用 可视化工具链接一下咱们的redis,发现链接成功,那么我就能够直接进行增删改查的数据操做啦。

 操做数据

 

 redis客户端已说明完,下面就是最重要的redis持久化。

3、Redis持久化方案


一、redis持久化有两种方案,一种是RDB,一种是AOF

二、RDB数据持久化

 1)说明:RDB是总体快照备份同样,就像咱们系统进行镜像的备份这种快照处理,固然看到这个你们应该会有一个问题,这样备份效率相对比较慢,并且一次备份数据比较大,因此官方也不推荐使用此方案进行数据持久化,但咱们还得结合实际状况使用,像

redis主从复制的原理底层数据就是经过RDB。

  2)触发RDB的方式有两种:

  save 同步保存

  bgsave 异步保存

话很少说咱们配置一下RDB

daemonize yes port 6666 requirepass 123 logfile ./redislog_louie.log dir ./ bind 192.168.250.132 127.0.0.1 # 0.0.0.0 save 20 1 # 自动保存策略,20秒内有一个key发生变化就自动保存 dbfilename rdb_louie.rdb # rdb文件名 stop-writes-on-bgsave-error yes # 发生错误中断写入,建议开启 rdbcompression yes # 数据文件压缩,建议开启 rdbchecksum yes # 开启crc64错误校验,建议开启

保存,运行一下咱们的redis,就能够看到咱们产生的rdb 文件了。

三、AOF数据持久化(推荐方案)

说明:日志追加数据持久化,即在原先的数据基础上进行追加,而不是彻底覆写,这样效率高。

注:若是RDB与AOF同时存在的状况下,redis默认优先使用AOF进行数据恢复。

 

AOF的配置以下:

daemonize yes port 6666 requirepass 123 logfile ./redislog_louie.log dir ./ bind 192.168.250.132 127.0.0.1 # 0.0.0.0 appendonly yes # 开启aof appendfilename aof_louie.aof # aof 日志文件名 appendfsync everysec # 每秒记录一第二天志,建议everysec no-appendfsync-on-rewrite yes # 重写过程当中是否向日志文件写入,yes 表明rewrite过程当中,不向aof文件中追加信息,rewrite结束后再写入,no 表明rewrite执行的同时,也向aof追加信息 auto-aof-rewrite-percentage 100 # 触发重写文件增加百分比 默认100% auto-aof-rewrite-min-size 64mb  # 触发重写最小aof文件尺寸

看到上面的配置,你们会有疑问,为何会有 重写,主要是由于要压缩数据,产生的文件更小,防止一样的相同命令占用空间,好比以下:用最简短的命令来操做数据

重写说明

 

至此,数据持久化已经都介绍完后 

 

4、总结


redis的持久化方案建议采用AOF,高效便捷。下一篇文章咱们就要进行redis高可用的介绍。

若是针对上面有任何问题,欢迎留言咨询。

 

asp.net core 交流群:787464275 欢迎加群交流
若是您认为这篇文章还不错或者有所收获,您能够点击右下角的【推荐】按钮精神支持,由于这种支持是我继续写做,分享的最大动力!

做者:LouieGuo
声明:原创博客请在转载时保留原文连接或者在文章开头加上本人博客地址,如发现错误,欢迎批评指正。凡是转载于本人的文章,不能设置打赏功能,若有特殊需求请与本人联系!

微信公众号:欢迎关注                                                 QQ技术交流群: 欢迎加群

                

相关文章
相关标签/搜索