Redis三:持久化配置和测试(windows) 您所在的位置:网站首页 redis持久化配置aof Redis三:持久化配置和测试(windows)

Redis三:持久化配置和测试(windows)

#Redis三:持久化配置和测试(windows)| 来源: 网络整理| 查看: 265

前言

redis有两种持久化方式:RDB和AOF。具体差别跟优缺点可参考Redis数据的两种持久化方式对比

本篇只介绍这两种方式怎么在windows环境下配置

一、RDB配置方式

默认情况下,是快照RDB的持久化方式,将内存中的数据以快照的方式写入二进制文件中,默认的文件名是dump.rdb:

找到Redis的配置文件所在位置,可以查看Redis服务的属性:

我的是redis.windows-service.conf文件

配置含义:

900秒内,如果超过1个key被修改,则发起快照保存

300秒内,如果超过10个key被修改,则发起快照保存

60秒内,如果1万个key被修改,则发起快照保存

默认配置不方便看效果,可将快照频率设大一点,在redis.conf中增加一行:

save 10 1

保存后,启动redis服务端和客户端。在客户端输入命令:

添加几条数据测试一下。

然后重启Redis服务重新查看数据,数据存在即成功持久化。

二、AOF 配置方式

Redis配置文件里默认:

appendonly no

配置文件中的appendonly修改为yes,开启AOF持久化。开启后,启动redis服务端,发现多了一个appendonly.aof文件

使用AOF做持久化,每一个命令以 Redis 协议的格式来保存,新命令会被追加到文件的末尾。 Redis 还可以在后台对 AOF 文件进行重写,使得 AOF文件的体积不会超出保存数据集状态所需的实际大小。

实际上,AOF持久化并不会立即将命令写入到硬盘文件中,而是写入到硬盘缓存,在接下来的策略中,配置多久来从硬盘缓存写入到硬盘文件。所以在一定程度一定条件下,还是会有数据丢失,不过你可以大大减少数据损失。

# appendfsync always appendfsync everysec # appendfsync no

配置含义:

always: 每次操作都会立即写入aof文件中

everysec: 每秒持久化一次(默认配置)

no: 不主动进行同步操作,默认30s一次

当然always一定是效率最低的,个人认为everysec就够用了,数据安全性能又高。Redis也允许我们同时使用两种方式,再重启redis后会从AOF中恢复数据,因为AOF比RDB数据损失小嘛

配置好后,启动redis客户端,输入命令:

 最后的flushall是清除所有的键值。打开appendonly.aof文件,可以看到:

 去掉最后面的flushall(也可以按照redis协议增加命令),重启客户端和服务端,看数据是否真的持久化了:

 说明使用AOF持久化也成功了

 

搜索

复制



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有