标签:aof 持久 bgsave Redis 命令 服务器 快照 save
快照持久化
就是获得存储在内存里面的数据在某个时间点上的副本。
在创建快照之后,用户可以对快照进行备份,可以将快照复制到其他服务器,从而创建具有相同数据的服务器副本,还可以将快照留在原地,以便重启服务器时使用。
创建快照的办法,有以下几种
- 客户端可以通过向Redis发送bgsave命令来创建一个快照。对于支持bgsave命令的平台来说,Redis会调用fork来创建一个子进程,然后子进程负责将快照写入硬盘,而父进程继续处理命令请求。
- 客户端还可以通过向Redis发送save命令来创建一个快照。接到save命令的Redis服务器在快照创建完毕之前将不再响应任何其他命令。save命令并不常用,我们通常只会在没有足够内存去执行bgsave命令的情况下,又或者即使等待持久化操作执行完毕也无所谓的情况下才会使用这个命令
- 如果用户设置了save配置选项,比如save 60 10000 那么从Redis最近一次创建快照之后开始算起,当“60秒之内有一万次写入”这个条件被满足时,Redis就会自动触发bgsave命令。如果用户设置了多个save配置选项,那么当任意一个save配置选项所设置的条件被满足时,Redis就会触发一次bgsave命令。
- 当Redis是通过shutdown命令接收到关闭服务器的请求时,或者接收到标准term信号时,会执行一个save命令,阻塞所有客户端,不再执行客户端发送的任何命令,并在save命令执行完毕之后关闭服务器。
- 当一个Redis服务器连接另一个Redis服务器,并向对方发送sync命令来开始一次复制操作的时候,如果主服务器目前没有在执行bgsave操作,或者主服务器并非刚刚执行完bgsave操作,那么主服务器就会执行bgsave命令。
Aof持久化
会将被执行的写命令写到aof文件的末尾以此来记录数据发生的变化,因此Redis是只要要从头到尾重新执行一次aof文件包含的所有写命令,就可以恢复aof文件所记录的数据集。
标签:aof,持久,bgsave,Redis,命令,服务器,快照,save 来源: https://www.cnblogs.com/yunhemeihe/p/12829553.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。