How to disable persistence with redis?

2020-05-11 17:47发布

问题:

I was wondering how to disable presistence in redis. There is mention of the possibility of doing this here: http://redis.io/topics/persistence. I mean it in the exact same sense as described there. Any help would be very much appreciated!

回答1:

To disable all data persistence in Redis do the following:

  1. Disable AOF by setting the appendonly configuration directive to no (it is the default value)
  2. Disable RDB snapshotting by disabling (commenting out) all of the saveconfiguration directives (there are 3 that are defined by default)

These configuration directives are stored in your redis.conf file. If you change them in the file, make sure you restart Redis to apply them. Alternatively, you can use the CONFIG SET command to apply these changes during runtime (just make sure you also do a CONFIG REWRITE to persist the changes).

Note: depending on your Redis' version, there are other tweaks that prevent Redis from accessing the disk for replication-related tasks.



回答2:

If you want to avoid playing with redis.conf (dev/test environments), you can do it through the command line with

redis-server --save "" --appendonly no

(tested with redis server 3.2.6)



回答3:

As AOF (appendonly) is disabled by default, there is only one thing that is to be done for disabling persistence without redis service restart is to disable save configuration.

For disabling it on runtime and verifying run below commands

Check current save configuration

pawan@devops:~$ redis-cli config get save
1) "save"
2) "900 1 300 10 60 10000"

Same setting will be present in redis.conf file as well

pawan@devops:~$ grep -w 'save' /etc/redis/redis.conf | grep -v '#'
save 900 1
save 300 10
save 60 10000

Disable save configuration

pawan@devops:~$ redis-cli config set save ""
OK

Modify redis.conf file with the new save configuration so that the configuration remains permanent on redis service restarts

root@ip-172-16-3-114:~# redis-cli config rewrite
OK

Confirm the new save configuration

pawan@devops:~$ redis-cli config get save
1) "save"
2) ""

Now if you will scan the redis.conf file for save configuration there won't be any results

pawan@devops:~$ grep -w 'save' /etc/redis/redis.conf | grep -v '#'  
pawan@devops:~$


回答4:

For RDB snapshotting you can disable it by using

$ sed -e '/save/ s/^#*/#/' -i /etc/redis/redis.conf && sudo service redis-server restart

It will comment the save lines in redis.conf and restarts the redis-server



标签: redis