我们在用Redis7来缓存数据时,如果没有设置缓存过期时间,系统都会默认有一个默认的缓存过期时间,但是如果我们想设置某个缓存的值永不过期该怎么设置呢?其实Redis7已经有默认的语法来支持键值永不过期的方法了。
语法:persist key
127.0.0.1:6379[2]> persist doMain
(integer) 1时间复杂度: O(1)
删除现有的超时值key,将密钥从易失性(具有过期集的密钥)转换为持久性(由于没有超时关联,密钥永不过期)。
返回值
整数回复,具体为:
. 1 如果超时被删除。
. 0如果key不存在或没有关联的超时。
例子
127.0.0.1:6379> set myDomain 'www.duidaima.com' //设置键myDomain OK 127.0.0.1:6379> expire myDomain 100//设置myDomain键的缓存过期时间为100秒 (integer) 1 127.0.0.1:6379> exists myDomain //查询一下myDomain键是否存储,放1表示存在,放0表示不存在 (integer) 1 127.0.0.1:6379> ttl myDomain //ttl命令用来查看键的过期时间 (integer) 100 127.0.0.1:6379> persist myDomain //设置键永不过期 (integer) 1 127.0.0.1:6379> ttl myDomain (integer) -1 127.0.0.1:6379>