redis的数据都保存在内存中,只有在上篇讲到的特定条件达成时以及正常退出时才会触发持久化操作,错误地停掉服务就会导致内存中的数据丢失。这一篇我们就来对比四种停掉redis服务的方法,看看该如何正确停掉redis服务。
我是T型人小付,一位坚持终身学习的互联网从业者。喜欢我的博客欢迎在csdn上关注我,如果有问题欢迎在底下的评论区交流,谢谢。
准备条件
紧接上一篇按照特定配置启动后往下,并且用redis-cli
连接到redis。我事先在redis中创建了3个已经持久化的key做为参照
127.0.0.1:6379> keys *
1) "age"
2) "name"
3) "hobby"
如上一篇所说,在不退出redis服务情况下的持久化设置为默认设置
save 900 1
save 300 10
save 60 10000
也就是说我只是增加一个key的情况,需要过900秒,也就是15分钟才会自动触发持久化。如果新添加的key被持久化了只可能是正常停掉服务而触发的。
下面开始进行4种不同方法的验证。
systemd停掉服务
在redis-cli
中新添加一个key如下
127.0.0.1:6379> set test1 test1
OK
然后马上利用systemd停掉redis服务
[root@testmachine redis]# systemctl stop redis
发现red