[不忘初心]
上一篇中,我们介绍Redis持久化的概念原理,本文我们来通过配置的实现Redis持久化。惯例,我们先看看准备工作有哪些:
操作系统:windows 7 x64,ubuntu 16
其他软件:在windows上使用Redis 2.8.19,在linux上使用Redis 3.2
--------------------------------------------------------------------------------------------------------------------------------------------------------
AOF模式
--------------------------------------------------------------------------------------------------------------------------------------------------------
一。windows平台
1.在Redis安装目录下找到redis.windows.conf文件(文件名称可能有差异,各位看官找到类似conf文件即可),打开找到如下位置:
解释:
a.将原来默认的配置修改为”appendonly yes“,保存。
b.在默认情况下,appendfsync 的配置为”everysec“,建议的配置也是如此,不过各位看官可以按需求进行变化,修改后记得保存。
c.关于配置项的含义,请参考前文的概念原理部分。
2.启动Redis服务器,(注意:启动Redis时,需要加载该配置文件),在博主的环境中,目录结构如下,对应的启动命令如下:
打开命令行,进入该目录,(或者直接shift右键),如下:
打开一个客户端,或者使用java程序,调用Redis基本命令。(详情见前文),如下:
注意观察:AOF文件的修改日志,这里文件大小由于我们只做了一个key的变化,无法具体体现。不过我们可以打开文件,观察文件末尾的内容:
3.关闭Redis,使用命令行观察上文中所示6372进程号是否存在,如果存在,关闭对应进程,如下:
4.重新打开Redis服务器,客户端。获取我们刚刚设置的key,查看Redis的返回结果:
5.由此,我们介绍了Redis在windows平台的AOF模式实现。
二。linux平台。
3.打开Redis服务器,新建一个客户端,如下:(记得加载该配置文件)
输入上面命令行后,进入src目录,观察appendonly.aof文件变化。
注意观察:AOF文件的修改日志,这里文件大小由于我们只做了一个key的变化,无法具体体现。不过我们可以打开文件,观察文件末尾的内容:
4.关闭Redis,使用命令行观察上文中所示3449进程号是否存在,如果存在,关闭对应进程,如下:
5.重新打开Redis服务器,客户端。获取我们刚刚设置的key,查看Redis的返回结果:
6.由此,我们介绍了Redis在linux平台的AOF模式实现。
--------------------------------------------------------------------------------------------------------------------------------------------------------
RDB模式
--------------------------------------------------------------------------------------------------------------------------------------------------------
一。windows平台。
1.在Redis安装目录下找到redis.windows.conf文件(文件名称可能有差异,各位看官找到类似conf文件即可),打开找到如下位置:
作为演示,我们修改其配置如下:
解释:”save 10 1“在10秒钟间隔,如果至少1个key存在变化,则执行一次RDB快照。
2.启动Redis服务器,(注意:启动Redis时,需要加载该配置文件),在博主的环境中,目录结构如下,对应的启动命令如下:
【这里有BUG:当配置文件按照上述配置,博主windows环境下的Redis(2.8.19版本)服务器启动将会直接崩溃,各位看官可以在自己的环境上测试该配置是否能够正确运行。由于Redis原生使用条件为linux条件,所以请各位看官观察linux环境即可。这里为了观察,我们手动调用”save“命令来观察RDB快照的保存结果,如下:】
二。linux平台。
一。windows平台。
1.在Redis安装目录下找到redis.windows.conf文件(文件名称可能有差异,各位看官找到类似conf文件即可),打开找到如下位置:
作为演示,我们修改其配置与上文的windows环境相同,具体请参考上文。
2.进入Redis安装目录,记录原始dump.rdb文件的大小,时间等信息,如下:
3.启动Redis服务器,记得加载redis.conf配置文件,开启一个客户端,如下:
三,备份恢复策略
- 当同时打开AOF与RDB时,优先从AOF恢复数据。【经过实际测试,aof文件为空或者不存在时,都不会加载rdb文件】
- 当只打开AOF时,只从AOF恢复数据。
- 当只打开RDB时,只从RDB回复数据。