RDB切换到AOF
在上篇博客中,讲了redis的两种持久化方式,RDB和AOF,有时需要将RDB切换到AOF,生产环境又不能关机,可能会造成重大的损失。我们可以通过命令的方式来切换。
1.准备redis.conf配置文件,确保开启rdb功能,配置参数如下
port 6379 daemonize yes pidfile /data/redis.pid loglevel notice logfile "/data/redis.log" dir /data/ dbfilename dbmp.rdb save 900 1 save 300 10 save 60 10000
2.启动redis服务端
redis-server redis.conf
3.插入redis数据,通过save命令,强制写入持久化rdb文件(此时还是使用rdb持久化)
127.0.0.1:6379> set name zouzou OK 127.0.0.1:6379> set age 18 OK127.0.0.1:6379> save OK
4.通过命令,切换到aof持久化,(注意此步只是临时生效,必须将AOF的配置,写入redis.conf)
127.0.0.1:6379> CONFIG set appendonly yes #开启AOF功能 OK 127.0.0.1:6379> CONFIG SET save "" #关闭RDB功能 OK
5.修改配置文件,添加aof参数,(此步重启后,rdb持久化完全切换aof持久化,且数据保持一致)
port 6379 daemonize yes pidfile /data/redis.pid loglevel notice logfile "/data/redis.log" dir /data/ appendonly yes appendfsync everysec
6.重启redis服务