设置100 EXPIRE a 86400
好的,现在,“a”将在一天内到期。我想要SET“a”到其他值,但我仍然希望它根据我创建的初始“EXPIRE”到期。
换句话说,当我将“a”设置为新内容时,请不要删除EXPIRE。
答案 0 :(得分:2)
如果您是从命令行执行此操作,则无法准确执行此操作。您可以做的最好的事情是手动将新密钥的过期时间设置为a
剩余的TTL(TTL a
)。
如果您正在通过某个程序与Redis进行通信,则可以获取a
的到期时间,并将该值设置为新密钥的到期时间,以便更加准确。
答案 1 :(得分:1)
尝试 setex bcz更快更好原子
答案 2 :(得分:0)
这是我requested 2 years ago的一部分,现在已添加(https://github.com/antirez/redis/pull/6679)。
SET foo 1 KEEPTTL
这将在下一个发行版中引入。