Redis持久化方式

Redis持久化方式

Redis持久化是将数据从断电易失的内存上,保存到永久储存的设备上

一、方式一:RDB

1.保存真实数据;

2.将指定时间间隔内的内存数据以快照的方式,写入二进制文件(dump.rdb);
(1)定时快照:固定时间间隔,将数据存储至磁盘;
(2)定量快照:数据变化一定次数后,将数据存储至磁盘;

3.默认文件:/val/lib/redis/dump.rdb;

实现方式

1.1 服务器执行客户端发送SAVE或BGSAVE命令(手动保存)

1. 127.0.0.1:6379> SAVE
	注:此命令执行时,redis服务器将阻塞,无法处理客户端发送的命令请求,直至SAVE执行完之后
	注:如果RDB文件存在,将会创建新的RDB文件代替
	
2. 127.0.0.1:6379> BGSAVE
	注:此命令执行时,redis服务器会fork()一个子进程去处理,并不影响redis继续处理客户端发送的命令请求

1.2 设置配置文件(自动保存)

1.修改配置文件redis.conf
	vim /安装目录/redis.conf (源码安装)
	vim /etc/redis.conf  (yum/apt-get安装)

2.修改配置文件redis.conf
    save 900 1: 距上次生成RDB文件后,900s内至少有1个key发生改变时,自动支持BGSAVE(默认)
    save 300 10: 距上次生成RDB文件后,300s内至少有10个key发生改变时,自动支持BGSAVE(默认)
    save 60 10000: 距上次生成RDB文件后,60s内至少有10000个key发生改变时,自动支持BGSAVE(默认)
    注:满足一个save,服务器就会自动执行BGSAVE
    注:每次常见RDB文件后,服务器会自动重置时间计数器和次数计数器

二、方式二:AOF

1.当有修改数据库的命令被执行时;

2.以日志的文本形式记录服务器所处理的每一个写、删除操作,并不记录查询操作;

2.存储的是命令,不是真实数据

实现方式

1.修改配置文件redis.conf
	vim /安装目录/redis.conf (源码安装)
	vim /etc/redis.conf  (yum/apt-get安装)

2.配置参数
	持久化开启:appendonly yes # 将no改为yes
	持久化开启:appendfilename "appendonly.aof"
	持久化策略:appendfsync always: 每次操作都会立即写入aof文件中
	持久化策略:appendfsync everysec: 每秒持久化一次(默认配置)
	持久化策略:appendfsync no: 不主动进行同步操作,默认30s一次
	
2.重启服务
	redis-cli -h 127.0.0.1 -p 6379 shutdown (源码安装)
	/etc/init.d/redis-server restart (yum/apt-get安装)
posted @ 2020-09-01 18:00  丶小白吖  阅读(66)  评论(0编辑  收藏  举报