版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_41756437/article/details/86185604
redis的set操作实际上是: 删除之前的key,再创建一个新的key,所以之前key就会被删除连带赋予的过期时间,
这时我们建议使用setrange 命令进行覆盖操作,避免过期时间被删除.
redis 的在线测试网址 (http://try.redis.io/ )
首先设置一个简单的string类型key:
set key 123;
为他设置过期时间(在这里我使用的是expireat unix时间戳以秒为单位)
expireat key 1547049599;
使用ttl 命令可以查看key的过期时间
ttl key;
使用setrange 命令(http://redisdoc.com/string/setrange.html)命令参考,这个命令有3个参数 ,分别表示(key值,覆盖位置,覆盖的值) 在这里我 直接从第0位开始覆盖 覆盖的新值为125
setrange key 0 125;
这时再查看过期时间是否还存在 ttl key ;查看新的值 是否发生改变 get key;